|
From: <de...@us...> - 2015-09-22 22:11:48
|
Revision: 9175
http://sourceforge.net/p/fudaa/svn/9175
Author: deniger
Date: 2015-09-22 22:11:45 +0000 (Tue, 22 Sep 2015)
Log Message:
-----------
CRUE-662
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/AbstractLoiCourbeModel.java
trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/DefaultLoiTableModel.java
trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/section/ProfilSectionLoiTableModel.java
trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/section/ProfilSectionLoiUiController.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerTraceGisBuilder.java
Modified: trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/AbstractLoiCourbeModel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/AbstractLoiCourbeModel.java 2015-09-22 22:09:19 UTC (rev 9174)
+++ trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/AbstractLoiCourbeModel.java 2015-09-22 22:11:45 UTC (rev 9175)
@@ -154,7 +154,6 @@
treeSet.add(ptEvolDelta);
}
-
}
return true;
}
@@ -524,7 +523,10 @@
}
Arrays.sort(idxToRemove);
for (int i = nb - 1; i >= 0; i--) {
- lines.remove(idxToRemove[i]);
+ int idx = idxToRemove[i];
+ if (idx < lines.size() && idx >= 0) {
+ lines.remove(idx);
+ }
}
changeDone();
return true;
Modified: trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/DefaultLoiTableModel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/DefaultLoiTableModel.java 2015-09-22 22:09:19 UTC (rev 9174)
+++ trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/DefaultLoiTableModel.java 2015-09-22 22:11:45 UTC (rev 9175)
@@ -1,19 +1,25 @@
package org.fudaa.fudaa.crue.loi.common;
+import java.util.List;
import org.apache.commons.lang.StringUtils;
+import org.fudaa.ctulu.CtuluCommandComposite;
+import org.fudaa.ctulu.CtuluDoubleParser;
import org.fudaa.ctulu.CtuluLibString;
+import org.fudaa.ctulu.table.CtuluTableExportInterface;
import org.fudaa.dodico.crue.config.ccm.PropertyNature;
import org.fudaa.ebli.courbe.EGAxe;
import org.fudaa.ebli.courbe.EGCourbe;
import org.fudaa.ebli.courbe.EGTableGraphePanel;
import org.fudaa.ebli.courbe.EGTableGraphePanel.SpecTableModel;
+import org.fudaa.ebli.courbe.EGTableModel;
+import org.fudaa.ebli.courbe.EGTableModelUpdatable;
/**
* Etend le tableModel par defaut de ebli-graphe, pour ajouter une colonne indiquant les erreurs/warnings et pour ne réagir qu'au courbe des points.
*
* @author Frederic Deniger
*/
-public class DefaultLoiTableModel extends SpecTableModel {
+public class DefaultLoiTableModel extends SpecTableModel implements CtuluTableExportInterface, EGTableModelUpdatable {
public DefaultLoiTableModel(EGTableGraphePanel graphePanel) {
super(graphePanel);
@@ -27,6 +33,51 @@
}
@Override
+ public boolean isColumnExportable(int colModel) {
+ return colModel != 0;
+ }
+
+ @Override
+ public int updateLines(final List _tab, final int _selectedColumm,
+ final int _selectedRow, final CtuluDoubleParser _doubleParser, final CtuluCommandComposite _cmp) {
+ final int nbLine = _tab.size();
+ final int maxUpdate = Math.min(nbLine, getCourbe().getModel().getNbValues() - _selectedRow);
+ for (int i = 0; i < maxUpdate; i++) {
+ final List listCell = (List) _tab.get(i);
+ final int max = Math.min(getRowCount() - _selectedColumm, listCell.size());
+ for (int j = 0; j < max; j++) {
+ final int iCellule = i + _selectedRow;
+ final int jCellule = j + _selectedColumm;
+ if (jCellule >= 1) {
+ final Object o = listCell.get(j);
+ setValueInModel(o, _doubleParser, iCellule, jCellule, _cmp);
+ }
+ }
+ }
+ return maxUpdate;
+ }
+
+ protected void setValueInModel(final Object o, final CtuluDoubleParser _doubleParser, final int iCellule, final int jCellule,
+ final CtuluCommandComposite _cmp) {
+ boolean ok = false;
+ double d = 0;
+ if (o instanceof Number) {
+ d = ((Number) o).doubleValue();
+ ok = true;
+ } else if (o != null) {
+ try {
+ d = _doubleParser.parse(o.toString());
+ ok = true;
+ } catch (final NumberFormatException e) {
+ ok = false;
+ }
+ }
+ if (ok) {
+ setValueAt(d, iCellule, jCellule, _cmp);
+ }
+ }
+
+ @Override
protected void selectedCourbeChanged(EGCourbe _a) {
if (_a == null && getCourbe() == null) {
return;
Modified: trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/section/ProfilSectionLoiTableModel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/section/ProfilSectionLoiTableModel.java 2015-09-22 22:09:19 UTC (rev 9174)
+++ trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/section/ProfilSectionLoiTableModel.java 2015-09-22 22:11:45 UTC (rev 9175)
@@ -3,6 +3,7 @@
*/
package org.fudaa.fudaa.crue.loi.section;
+import com.memoire.fu.FuEmptyArrays;
import gnu.trove.TIntObjectHashMap;
import java.util.ArrayList;
import java.util.Collections;
@@ -10,7 +11,12 @@
import java.util.List;
import java.util.Map;
import java.util.Set;
+import org.apache.commons.lang.StringUtils;
+import org.fudaa.ctulu.CtuluCommandComposite;
+import org.fudaa.ctulu.CtuluDoubleParser;
+import org.fudaa.ctulu.CtuluLibArray;
import org.fudaa.ctulu.CtuluListSelection;
+import org.fudaa.dodico.crue.common.transformer.TransformerHelper;
import org.fudaa.dodico.crue.metier.emh.DonFrt;
import org.fudaa.dodico.crue.config.lit.LitNommeLimite;
import org.fudaa.ebli.courbe.EGTableGraphePanel;
@@ -28,9 +34,11 @@
public static final int COLUMN_FRT = 4;
protected String donFrtLimiteLitAsString;
protected String donFrtLimiteLitNommeAsString;
+ private final ProfilSectionLoiUiController profilSectionLoiUiController;
- public ProfilSectionLoiTableModel(EGTableGraphePanel graphePanel) {
+ public ProfilSectionLoiTableModel(EGTableGraphePanel graphePanel, ProfilSectionLoiUiController profilSectionLoiUiController) {
super(graphePanel);
+ this.profilSectionLoiUiController = profilSectionLoiUiController;
donFrtLimiteLitAsString = org.openide.util.NbBundle.getMessage(LoiMessages.class, "ProfilSection.DonFrt.LimiteLit");
donFrtLimiteLitNommeAsString = org.openide.util.NbBundle.getMessage(LoiMessages.class, "ProfilSection.DonFrt.LimiteLitNomme");
}
@@ -64,10 +72,38 @@
}
@Override
- public String getColumnName(int _column) {
+ protected void setValueInModel(final Object o, final CtuluDoubleParser _doubleParser, final int iCellule, final int jCellule,
+ final CtuluCommandComposite _cmp) {
+ if (jCellule == COLUMN_ETIQUETTE) {
+ String etiquettesValue = o == null ? null : o.toString();
+ String[] etiquettes = StringUtils.split(etiquettesValue, ";");
+ final List<ProfilSectionEtiquette> allEtiquettes = ProfilSectionEtiquette.getEtiquettes(profilSectionLoiUiController.getCcm());
+ List<ProfilSectionEtiquette> newEtiquettes = new ArrayList<>();
+ final Map<String, ProfilSectionEtiquette> toMapOfString = CtuluLibArray.toMapOfString(allEtiquettes);
+ for (String etiquette : etiquettes) {
+ final ProfilSectionEtiquette found = toMapOfString.get(etiquette);
+ if (found != null) {
+ newEtiquettes.add(found);
+ }
+ }
+ setEtiquettes(newEtiquettes, iCellule);
+
+ } else if (jCellule == COLUMN_FRT) {
+ String frt = o == null ? null : o.toString();
+ DonFrt toSet = profilSectionLoiUiController.getDonFrtByName(frt);
+ setValueAt(toSet, iCellule, jCellule);
+ } else {
+ super.setValueInModel(o, _doubleParser, iCellule, jCellule, _cmp);
+ }
+ }
+
+ @Override
+ public String
+ getColumnName(int _column) {
if (_column == COLUMN_ETIQUETTE) {
return NbBundle.getMessage(LoiMessages.class, "Etiquette.Label");
}
+
if (_column == COLUMN_FRT) {
return NbBundle.getMessage(LoiMessages.class, "DonFrt.Label");
}
@@ -77,6 +113,7 @@
@Override
public void setValueAt(Object _value, int _rowIndex, int _columnIndex) {
if (_columnIndex == COLUMN_ETIQUETTE) {
+
// ne rien faire ici.setEtiquettes appelé explicitement par le CellEditor.
} else if (_columnIndex == COLUMN_FRT) {
if (_rowIndex < getCourbe().getModel().getNbValues()) {
Modified: trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/section/ProfilSectionLoiUiController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/section/ProfilSectionLoiUiController.java 2015-09-22 22:09:19 UTC (rev 9174)
+++ trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/section/ProfilSectionLoiUiController.java 2015-09-22 22:11:45 UTC (rev 9175)
@@ -24,6 +24,7 @@
import org.fudaa.ctulu.CtuluLogLevel;
import org.fudaa.ctulu.CtuluNumberFormatDefault;
import org.fudaa.dodico.crue.common.io.CrueIOResu;
+import org.fudaa.dodico.crue.common.transformer.TransformerHelper;
import org.fudaa.dodico.crue.config.ccm.ConfigLoi;
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetier;
import org.fudaa.dodico.crue.config.ccm.DecimalFormatEpsilonEnum;
@@ -187,6 +188,20 @@
}
}
+ protected DonFrt getDonFrtByName(String id) {
+ if (id == null) {
+ return null;
+ }
+ Map<String, DonFrt> toMapOfId = TransformerHelper.toMapOfId(frt);
+ DonFrt frt = toMapOfId.get(id.toUpperCase());
+ if (frt != null) {
+ return frt;
+ }
+ toMapOfId = TransformerHelper.toMapOfId(frtStockage);
+ return toMapOfId.get(id.toUpperCase());
+
+ }
+
public JLabel getLabelValidating() {
return labelValidating;
}
@@ -330,7 +345,7 @@
@Override
protected AbstractTableModel createTableModel() {
- return new ProfilSectionLoiTableModel(tableGraphePanel);
+ return new ProfilSectionLoiTableModel(tableGraphePanel, this);
}
@Override
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerTraceGisBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerTraceGisBuilder.java 2015-09-22 22:09:19 UTC (rev 9174)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerTraceGisBuilder.java 2015-09-22 22:11:45 UTC (rev 9175)
@@ -195,6 +195,13 @@
Coordinate aval = brancheGis.getCoordinateN(segmentidx + 1);
double norm = amont.distance(aval);
if (norm == 0) {
+ if (segmentidx > 0) {
+ amont = brancheGis.getCoordinateN(segmentidx - 1);
+ norm = amont.distance(aval);
+ if (norm == 0) {
+ return null;
+ }
+ }
return null;
}
double vx = aval.x - amont.x;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2015-10-09 19:53:35
|
Revision: 9184
http://sourceforge.net/p/fudaa/svn/9184
Author: deniger
Date: 2015-10-09 19:53:32 +0000 (Fri, 09 Oct 2015)
Log Message:
-----------
CRUE-644
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/CourbesUiController.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalCourbesUiResController.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalCourbesUiResController.java
trunk/soft/fudaa-crue/ui-study/src/main/java/org/fudaa/fudaa/crue/study/services/TableExportCommentSupplier.java
Modified: trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/CourbesUiController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/CourbesUiController.java 2015-10-09 19:53:24 UTC (rev 9183)
+++ trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/CourbesUiController.java 2015-10-09 19:53:32 UTC (rev 9184)
@@ -203,6 +203,8 @@
toolbar.add(new CourbeVisibiltyUIAction(graphe).buildToolButton(EbliComponentFactory.INSTANCE));
EGTableAction tableAction = (EGTableAction) getActions("TABLE").get(0);
tableAction.setAddOptions(false);
+ tableAction.setAddCheckbox(true);
+ tableAction.setShowColumnToExport(false);
tableAction.setDisplayAll(true);
PopupMenuReceiver popupTable = createLoiPoupReceiver();
popupTable.install(tableGraphePanel.getTable(), CtuluUIForNetbeans.DEFAULT);
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalCourbesUiResController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalCourbesUiResController.java 2015-10-09 19:53:24 UTC (rev 9183)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalCourbesUiResController.java 2015-10-09 19:53:32 UTC (rev 9184)
@@ -21,6 +21,8 @@
public ReportLongitudinalCourbesUiResController() {
EGTableAction tableAction = (EGTableAction) getActions("TABLE").get(0);
tableAction.setAddOptions(false);
+ tableAction.setAddCheckbox(true);
+ tableAction.setShowColumnToExport(false);
tableAction.setDisplayAll(true);
tableAction.setShowLabel(true);
setUseVariableForAxeH(true);
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalCourbesUiResController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalCourbesUiResController.java 2015-10-09 19:53:24 UTC (rev 9183)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalCourbesUiResController.java 2015-10-09 19:53:32 UTC (rev 9184)
@@ -21,6 +21,8 @@
public ReportTemporalCourbesUiResController() {
EGTableAction tableAction = (EGTableAction) getActions("TABLE").get(0);
tableAction.setAddOptions(false);
+ tableAction.setAddCheckbox(true);
+ tableAction.setShowColumnToExport(false);
tableAction.setDisplayAll(true);
tableAction.setShowLabel(true);
}
Modified: trunk/soft/fudaa-crue/ui-study/src/main/java/org/fudaa/fudaa/crue/study/services/TableExportCommentSupplier.java
===================================================================
--- trunk/soft/fudaa-crue/ui-study/src/main/java/org/fudaa/fudaa/crue/study/services/TableExportCommentSupplier.java 2015-10-09 19:53:24 UTC (rev 9183)
+++ trunk/soft/fudaa-crue/ui-study/src/main/java/org/fudaa/fudaa/crue/study/services/TableExportCommentSupplier.java 2015-10-09 19:53:32 UTC (rev 9184)
@@ -4,10 +4,10 @@
package org.fudaa.fudaa.crue.study.services;
import java.util.Arrays;
+import java.util.Collections;
import java.util.List;
import org.fudaa.dodico.crue.common.BusinessMessages;
import org.openide.util.Lookup;
-import org.openide.util.NbBundle;
/**
*
@@ -23,6 +23,10 @@
}
public List<String> getComments(String type) {
+ //pour tests uniquement
+ if (crueService == null) {
+ return Collections.emptyList();
+ }
if (post) {
return Arrays.asList(
BusinessMessages.getString("ExportFichierEtu") + ": " + crueService.getEtuFileLoaded().getAbsolutePath(),
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2015-10-09 23:02:48
|
Revision: 9185
http://sourceforge.net/p/fudaa/svn/9185
Author: deniger
Date: 2015-10-09 23:02:45 +0000 (Fri, 09 Oct 2015)
Log Message:
-----------
CRUE-644
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-otfa/src/main/java/org/fudaa/dodico/crue/projet/otfa/OtfaReportExecutorDelegate.java
trunk/soft/fudaa-crue/crue-otfa/src/main/java/org/fudaa/dodico/crue/projet/otfa/OtfaReportExecutorDelegateTemporal.java
trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/CourbesUiController.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalTimeChooser.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalCourbesUiResController.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalTopComponent.java
trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/Bundle.properties
trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/data/Bundle.properties
trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/export/Bundle.properties
Added Paths:
-----------
trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/
trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/ReportExportTemporal.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/data/ReportVariableChooser.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportCourbeExportActionAbstract.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportTemporalExportAction.java
Modified: trunk/soft/fudaa-crue/crue-otfa/src/main/java/org/fudaa/dodico/crue/projet/otfa/OtfaReportExecutorDelegate.java
===================================================================
--- trunk/soft/fudaa-crue/crue-otfa/src/main/java/org/fudaa/dodico/crue/projet/otfa/OtfaReportExecutorDelegate.java 2015-10-09 19:53:32 UTC (rev 9184)
+++ trunk/soft/fudaa-crue/crue-otfa/src/main/java/org/fudaa/dodico/crue/projet/otfa/OtfaReportExecutorDelegate.java 2015-10-09 23:02:45 UTC (rev 9185)
@@ -13,7 +13,6 @@
import org.fudaa.dodico.crue.common.BusinessMessages;
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetierConstants;
import org.fudaa.dodico.crue.config.ccm.DecimalFormatEpsilonEnum;
-import org.fudaa.dodico.crue.config.ccm.ItemVariable;
import org.fudaa.dodico.crue.config.ccm.PropertyNature;
import org.fudaa.dodico.crue.metier.emh.ResultatTimeKey;
import org.fudaa.dodico.crue.projet.report.ReportViewLineInfoAndType;
Modified: trunk/soft/fudaa-crue/crue-otfa/src/main/java/org/fudaa/dodico/crue/projet/otfa/OtfaReportExecutorDelegateTemporal.java
===================================================================
--- trunk/soft/fudaa-crue/crue-otfa/src/main/java/org/fudaa/dodico/crue/projet/otfa/OtfaReportExecutorDelegateTemporal.java 2015-10-09 19:53:32 UTC (rev 9184)
+++ trunk/soft/fudaa-crue/crue-otfa/src/main/java/org/fudaa/dodico/crue/projet/otfa/OtfaReportExecutorDelegateTemporal.java 2015-10-09 23:02:45 UTC (rev 9185)
@@ -10,11 +10,8 @@
import java.util.List;
import java.util.Map;
import java.util.Set;
-import org.apache.commons.lang.StringUtils;
import org.fudaa.ctulu.CtuluLog;
import org.fudaa.dodico.crue.common.BusinessMessages;
-import org.fudaa.dodico.crue.config.ccm.DecimalFormatEpsilonEnum;
-import org.fudaa.dodico.crue.config.ccm.PropertyNature;
import org.fudaa.dodico.crue.metier.emh.ResultatTimeKey;
import org.fudaa.dodico.crue.projet.report.ReportViewLineInfoAndType;
import org.fudaa.dodico.crue.projet.report.data.ReportRunKey;
Added: trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/ReportExportTemporal.java
===================================================================
--- trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/ReportExportTemporal.java (rev 0)
+++ trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/ReportExportTemporal.java 2015-10-09 23:02:45 UTC (rev 9185)
@@ -0,0 +1,89 @@
+/*
+ GPL 2
+ */
+package org.fudaa.dodico.crue.projet.report.export;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.util.List;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+import org.fudaa.ctulu.CtuluLibFile;
+import org.fudaa.ctulu.CtuluLibString;
+import org.fudaa.ctulu.CtuluResource;
+import org.fudaa.ctulu.table.CtuluTableXlsxWriter;
+import org.fudaa.dodico.crue.common.BusinessMessages;
+import org.fudaa.dodico.crue.metier.emh.ResultatTimeKey;
+import org.fudaa.dodico.crue.projet.report.ReportResultProviderServiceContrat;
+import org.fudaa.dodico.crue.projet.report.data.ReportRunVariableEmhKey;
+import org.fudaa.dodico.crue.projet.report.persist.ReportTemporalConfig;
+
+/**
+ *
+ * @author Frederic Deniger
+ */
+public class ReportExportTemporal {
+
+ private final ReportTemporalConfig config;
+ private final ReportResultProviderServiceContrat resultService;
+ private final String name;
+
+ public ReportExportTemporal(ReportTemporalConfig config, ReportResultProviderServiceContrat resultService, String name) {
+ this.config = config;
+ this.resultService = resultService;
+ this.name = name;
+ }
+
+ public void export(List<ReportRunVariableEmhKey> variablesToExport, List<ResultatTimeKey> times, File target) {
+ Workbook wb = new XSSFWorkbook();
+ writeInBook(wb, variablesToExport, times);
+ writeToFile(wb, target);
+
+ }
+
+ protected void writeInBook(Workbook wb, List<ReportRunVariableEmhKey> variablesToExport, List<ResultatTimeKey> times) {
+ String sheetName = name;
+ if (sheetName == null) {
+ sheetName = CtuluResource.CTULU.getString("Feuille {0}", CtuluLibString.getString(1));
+ }
+ Sheet currentSheet = wb.createSheet(sheetName);
+ //Titres
+ int rowIdx = 0;
+ Row row = currentSheet.createRow(rowIdx++);
+ int idx = 0;
+ row.createCell(idx++).setCellValue(BusinessMessages.getString("Export.Calcul.ColumnName"));
+ row.createCell(idx++).setCellValue(BusinessMessages.getString("Export.Temps.ColumnName"));
+ for (ReportRunVariableEmhKey variable : variablesToExport) {
+ row.createCell(idx++).setCellValue(variable.getRunVariableKey().getVariable().getVariableDisplayName() + "-" + variable.getEmhName());
+ }
+ for (ResultatTimeKey time : times) {
+ idx = 0;
+ row = currentSheet.createRow(rowIdx++);
+ row.createCell(idx++).setCellValue(time.getNomCalcul());
+ row.createCell(idx++).setCellValue(time.getTemps());
+ for (ReportRunVariableEmhKey variable : variablesToExport) {
+ Double val = resultService.getValue(time, variable.getRunVariableKey(), variable.getEmhName());
+ row.createCell(idx++).setCellValue(val.doubleValue());
+ }
+
+ }
+ }
+
+ protected void writeToFile(Workbook wb, File target) {
+ FileOutputStream fileOut = null;
+ try {
+ fileOut = new FileOutputStream(target);
+ wb.write(fileOut);
+ fileOut.close();
+ } catch (IOException ex) {
+ Logger.getLogger(CtuluTableXlsxWriter.class.getName()).log(Level.SEVERE, null, ex);
+ } finally {
+ CtuluLibFile.close(fileOut);
+ }
+ }
+}
Modified: trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/CourbesUiController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/CourbesUiController.java 2015-10-09 19:53:32 UTC (rev 9184)
+++ trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/CourbesUiController.java 2015-10-09 23:02:45 UTC (rev 9185)
@@ -45,90 +45,90 @@
* @author Frederic Deniger
*/
public class CourbesUiController implements CtuluImageProducer {
-
+
protected EGFillePanel panel;
protected EGTableGraphePanel tableGraphePanel;
protected EGAxeHorizontal axeH;
protected JPanel toolbar;
protected boolean useVariableForAxeH;
protected List<EbliActionInterface> editCourbeActions = new ArrayList<EbliActionInterface>();
-
+
protected void configureTablePanel() {
tableGraphePanel.getTable().setModel(createTableModel());
tableGraphePanel.setPreferredSize(new Dimension(300, 600));
new LoiTimeExportDecorator(tableGraphePanel.getTable());
}
-
+
public boolean isUseVariableForAxeH() {
return useVariableForAxeH;
}
-
+
public void setUseVariableForAxeH(boolean useVariableForAxeH) {
this.useVariableForAxeH = useVariableForAxeH;
}
-
+
public void installComboxSelector() {
tableGraphePanel.getTitleLabel().setVisible(false);
tableGraphePanel.remove(tableGraphePanel.getTitleLabel());
ComboboxCourbeSelector cb = new ComboboxCourbeSelector(getGraphe());
tableGraphePanel.add(cb.getCb(), BorderLayout.NORTH);
-
+
}
-
+
public EGGrapheSimpleModel getEGGrapheSimpleModel() {
return (EGGrapheSimpleModel) getGraphe().getModel();
}
-
+
public EGTableGraphePanel getTableGraphePanel() {
return tableGraphePanel;
}
-
+
public EGAxeHorizontal getAxeX() {
return getEGGrapheSimpleModel().getAxeX();
}
-
+
public List<EGAxeVertical> getAxesY() {
return getGraphe().getAllAxeVertical();
}
-
+
@Override
public BufferedImage produceImage(final Map _params) {
return panel.produceImage(_params);
-
+
}
-
+
@Override
public BufferedImage produceImage(int _w, int _h, Map _params) {
return panel.produceImage(_w, _h, _params);
}
-
+
@Override
public Dimension getDefaultImageDimension() {
return panel.getDefaultImageDimension();
}
-
+
public void addExportImagesToToolbar() {
toolbar.add(new ExportImageAction(panel).buildToolButton(EbliComponentFactory.INSTANCE));
toolbar.add(new ExportImageToClipboardAction(panel).buildToolButton(EbliComponentFactory.INSTANCE));
}
-
+
public JPanel getToolbar() {
return toolbar;
}
-
+
public EGFillePanel getPanel() {
return panel;
}
-
+
public EGGraphe getGraphe() {
return panel.getGraphe();
}
-
+
public void removeEditActions() {
tableGraphePanel.removeEditButtonsButCopy();
removeActions("MOVE_POINT", "SIMPLIFY");
}
-
+
public void removeActions(String... actionCommands) {
if (toolbar != null) {
Set<String> command = new HashSet<String>(Arrays.asList(actionCommands));
@@ -140,12 +140,12 @@
toolbar.remove(component);
}
}
-
+
}
}
-
+
}
-
+
public List<EbliActionInterface> getActions(String... command) {
EbliActionInterface[] specificActions = panel.getSpecificActions();
List<EbliActionInterface> res = new ArrayList<EbliActionInterface>();
@@ -161,11 +161,11 @@
}
return res;
}
-
+
public List<EbliActionInterface> getEditActions() {
return getActions("CONFIGURE", "CONFIGURE_REPERE");
}
-
+
public CourbesUiController() {
final EGGrapheSimpleModel grapheModel = new LoiGrapheSimpleModel();
axeH = new EGAxeHorizontal();
@@ -212,21 +212,25 @@
popupGraphe.setEditEnable(true);
popupGraphe.install(panel.getGraphe(), tableGraphePanel.getTable(), CtuluUIForNetbeans.DEFAULT);
}
+
+ public void addToolbarAction(EbliActionInterface action) {
+ toolbar.add(action.buildToolButton(EbliComponentFactory.INSTANCE), toolbar.getComponentCount() - 2);
+ }
protected boolean editable;
-
+
public void setEditable(boolean b) {
editable = b;
tableGraphePanel.updateState();
for (EbliActionInterface ebliActionInterface : editCourbeActions) {
ebliActionInterface.setEnabled(b);
-
+
}
}
-
+
protected AbstractTableModel createTableModel() {
return new EGTableGraphePanel.SpecTableModel(tableGraphePanel);
}
-
+
public void configureAxeH(final PropertyNature natureAbscisse, boolean usePresentation) {
if (natureAbscisse == null) {
return;
@@ -237,7 +241,7 @@
axeH.setUnite(natureAbscisse.getUnite());
installFormatter(natureAbscisse, axeH, usePresentation);
}
-
+
public void configureAxeH(final ItemVariable varAbscisse, boolean usePresentation) {
if (varAbscisse == null) {
return;
@@ -246,15 +250,15 @@
axeH.setTitre(varAbscisse.getDisplayNom());
axeH.setUserObject(varAbscisse);
}
-
+
public EGAxeVertical findAxe(final ItemVariable varOrdonnee) {
if (varOrdonnee == null) {
return null;
}
return findAxe(varOrdonnee.getNature());
-
+
}
-
+
public EGAxeVertical findAxe(final PropertyNature nature) {
if (nature == null) {
return null;
@@ -267,15 +271,15 @@
}
return null;
}
-
+
public EGAxeVertical createAxeVertical(final ItemVariable varOrdonnee, boolean usePresentation) {
if (varOrdonnee == null) {
return null;
}
return createAxeVertical(varOrdonnee.getNature(), usePresentation);
-
+
}
-
+
public EGAxeVertical createAxeVertical(final PropertyNature nature, boolean usePresentation) {
EGAxeVertical axeV = null;
if (nature != null) {
@@ -289,7 +293,7 @@
installFormatter(nature, axeV, usePresentation);
return axeV;
}
-
+
public void setAxeHSpecificFormats(CtuluNumberFormatI mainFormat, CtuluNumberFormatI detailFormat, final CtuluValueEditorI _valueEditor) {
if (getAxeX() != null) {
getAxeX().setSpecificFormat(mainFormat);
@@ -297,10 +301,10 @@
getAxeX().setValueEditor(_valueEditor);
}
}
-
+
protected void installFormatter(final PropertyNature var, EGAxe axe, boolean usePresentation) {
if (var != null) {
-
+
if (var.isEnum()) {
axe.setSpecificFormat(new EnumNumberFormatter(var));
axe.setAxisIterator(new FixedIntegerIterator(var.getItemEnumByValue().keys()));
@@ -318,7 +322,7 @@
}
axe.setUserObject(var);
}
-
+
public LoiPopupMenuReceiver createLoiPoupReceiver() {
return new LoiPopupMenuReceiver(panel);
}
@@ -338,7 +342,7 @@
configureAxeH(varAbscisse.getNature(), usePresentationFormat);
}
}
-
+
public void initAxeWithDuration(final PropertyNature var, EGAxe axe) {
final ToStringTransformerSecond toStringTransformerSecond = new ToStringTransformerSecond();
final CtuluNumberFormatDefault toSecondFormat = new CtuluNumberFormatDefault(var.getFormatter(DecimalFormatEpsilonEnum.COMPARISON));
Added: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/data/ReportVariableChooser.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/data/ReportVariableChooser.java (rev 0)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/data/ReportVariableChooser.java 2015-10-09 23:02:45 UTC (rev 9185)
@@ -0,0 +1,97 @@
+/*
+ GPL 2
+ */
+package org.fudaa.fudaa.crue.report.data;
+
+import com.jidesoft.swing.CheckBoxList;
+import java.awt.BorderLayout;
+import java.awt.event.ItemEvent;
+import java.awt.event.ItemListener;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+import java.util.Set;
+import javax.swing.JCheckBox;
+import javax.swing.JPanel;
+import javax.swing.JScrollPane;
+import org.fudaa.dodico.crue.projet.report.data.ReportRunKey;
+import org.fudaa.dodico.crue.projet.report.data.ReportRunVariableEmhKey;
+import org.fudaa.dodico.crue.projet.report.data.ReportVariableKey;
+import org.fudaa.fudaa.crue.common.PerspectiveEnum;
+import org.fudaa.fudaa.crue.common.helper.CheckBoxListPopupListener;
+import org.fudaa.fudaa.crue.common.helper.DialogHelper;
+import org.fudaa.fudaa.crue.report.longitudinal.ReportLongitudinalTimeChooser;
+import org.fudaa.fudaa.crue.report.service.ReportResultProviderService;
+import org.openide.util.NbBundle;
+
+/**
+ *
+ * @author Frederic Deniger
+ */
+public class ReportVariableChooser {
+
+ private final List<String> choosableVariables;
+ private final Set<String> currentSelected;
+
+ public ReportVariableChooser(List<String> choosableVariables, Set<String> currentSelected) {
+ this.choosableVariables = choosableVariables;
+ this.currentSelected = currentSelected;
+ }
+
+ public List<ReportRunVariableEmhKey> getKeysForCurrentRun(ReportResultProviderService reportService, List<String> variables, List<String> emhs) {
+ List<ReportRunVariableEmhKey> res = new ArrayList<>();
+ if (variables != null) {
+ for (String variable : variables) {
+ final ReportVariableKey createVariableKey = reportService.createVariableKey(variable);
+ for (String emh : emhs) {
+ ReportRunVariableEmhKey key = new ReportRunVariableEmhKey(reportService.getReportService().getCurrentRunKey(), createVariableKey, emh);
+ res.add(key);
+ }
+ }
+ }
+ return res;
+
+ }
+
+ public List<String> choose() {
+ final CheckBoxList list = new CheckBoxList(choosableVariables.toArray());
+ for (int i = 0; i < choosableVariables.size(); i++) {
+ if (currentSelected.contains(choosableVariables.get(i))) {
+ list.addSelectionInterval(i, i);
+ }
+
+ }
+ list.setCellRenderer(new ReportVariableCellRenderer());
+ new CheckBoxListPopupListener(list);
+ JPanel pn = new JPanel(new BorderLayout(0, 5));
+ final JCheckBox selectAll = new JCheckBox(NbBundle.getMessage(ReportLongitudinalTimeChooser.class, "ChooseTime.SelectAllNone"));
+ selectAll.addItemListener(new ItemListener() {
+
+ @Override
+ public void itemStateChanged(ItemEvent e) {
+ boolean select = selectAll.isSelected();
+ if (select) {
+ list.selectAll();
+ } else {
+ list.selectNone();
+ }
+ }
+ });
+ pn.add(new JScrollPane(list));
+ pn.add(selectAll, BorderLayout.NORTH);
+ String title = org.openide.util.NbBundle.getMessage(ReportVariableChooser.class, "ReportVariableChooser.DialogTitle");
+ boolean ok = DialogHelper.showQuestionAndSaveDialogConf(title, pn, getClass());
+ if (ok) {
+ final Object[] checkBoxListSelectedValues = list.getCheckBoxListSelectedValues();
+ List<String> res = new ArrayList<>();
+ for (Object checkBoxListSelectedValue : checkBoxListSelectedValues) {
+ res.add((String) checkBoxListSelectedValue);
+ }
+ return res;
+ }
+ return Collections.emptyList();
+
+ }
+
+}
Added: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportCourbeExportActionAbstract.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportCourbeExportActionAbstract.java (rev 0)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportCourbeExportActionAbstract.java 2015-10-09 23:02:45 UTC (rev 9185)
@@ -0,0 +1,48 @@
+/*
+ GPL 2
+ */
+package org.fudaa.fudaa.crue.report.export;
+
+import com.memoire.bu.BuResource;
+import java.io.File;
+import org.fudaa.ctulu.gui.CtuluExportTableChooseFile;
+import org.fudaa.ctulu.gui.CtuluFileChooserCsvExcel;
+import org.fudaa.ebli.commun.EbliActionSimple;
+import org.fudaa.fudaa.crue.common.helper.CrueProgressUtils;
+import org.fudaa.fudaa.crue.common.helper.CtuluUIForNetbeans;
+import org.fudaa.fudaa.crue.common.helper.DialogHelper;
+import org.fudaa.fudaa.crue.report.AbstractReportTimeViewTopComponent;
+import org.netbeans.api.progress.ProgressRunnable;
+
+/**
+ *
+ * @author Frederic Deniger
+ */
+public abstract class ReportCourbeExportActionAbstract<T extends AbstractReportTimeViewTopComponent> extends EbliActionSimple {
+
+ protected final T topComponent;
+
+ public ReportCourbeExportActionAbstract(T topComponent) {
+ super(org.openide.util.NbBundle.getMessage(ReportCourbeExportActionAbstract.class, "ExportAll.Action"), BuResource.BU.getToolIcon("exporter"),
+ "EXPORT");
+ setDefaultToolTip(org.openide.util.NbBundle.getMessage(ReportCourbeExportActionAbstract.class, "ExportAll.Tootltip"));
+ this.topComponent = topComponent;
+ }
+
+ protected File chooseTargetFile() {
+ final CtuluFileChooserCsvExcel choose = new CtuluFileChooserCsvExcel(CtuluUIForNetbeans.DEFAULT);
+ choose.removeChoosableFileFilter(choose.getFtCsv());
+ choose.removeChoosableFileFilter(choose.getFtXsl());
+ final File f = new CtuluExportTableChooseFile(choose).chooseExportFile();
+ return f;
+ }
+
+ protected void execute(ProgressRunnable<Boolean> runnable, File f) {
+ Boolean res = CrueProgressUtils.showProgressDialogAndRun(runnable, getTitle());
+ if (Boolean.TRUE.equals(res)) {
+ DialogHelper.showNotifyOperationTermine(getTitle(), org.openide.util.NbBundle.getMessage(ReportTemporalExportAction.class, "ExportEnded", f.
+ getAbsolutePath()));
+ }
+ }
+
+}
Added: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportTemporalExportAction.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportTemporalExportAction.java (rev 0)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportTemporalExportAction.java 2015-10-09 23:02:45 UTC (rev 9185)
@@ -0,0 +1,67 @@
+/*
+ GPL 2
+ */
+package org.fudaa.fudaa.crue.report.export;
+
+import java.awt.event.ActionEvent;
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import org.fudaa.dodico.crue.metier.emh.ResultatTimeKey;
+import org.fudaa.dodico.crue.projet.report.data.ReportRunContent;
+import org.fudaa.dodico.crue.projet.report.data.ReportRunVariableEmhKey;
+import org.fudaa.dodico.crue.projet.report.export.ReportExportTemporal;
+import org.fudaa.fudaa.crue.report.data.ReportVariableChooser;
+import org.fudaa.fudaa.crue.report.service.ReportResultProviderService;
+import org.fudaa.fudaa.crue.report.temporal.ReportTemporalTopComponent;
+import org.netbeans.api.progress.ProgressHandle;
+import org.netbeans.api.progress.ProgressRunnable;
+import org.openide.util.Lookup;
+
+/**
+ *
+ * @author Frederic Deniger
+ */
+public class ReportTemporalExportAction extends ReportCourbeExportActionAbstract<ReportTemporalTopComponent> {
+
+ public ReportTemporalExportAction(ReportTemporalTopComponent topComponent) {
+ super(topComponent);
+ }
+
+ @Override
+ public void actionPerformed(ActionEvent _e) {
+ final List<String> choosableVariables = new ArrayList<>(Arrays.asList(topComponent.getChoosableVariables()));
+ choosableVariables.remove(null);
+ final Set<String> selectedVariables = new HashSet<>(topComponent.getReportConfig().getVariables());
+ ReportVariableChooser variableChooser = new ReportVariableChooser(choosableVariables, selectedVariables);
+ final List<String> toExport = variableChooser.choose();
+ if (!toExport.isEmpty()) {
+ final ReportResultProviderService reportResultProviderService = Lookup.getDefault().lookup(ReportResultProviderService.class);
+ final List<ResultatTimeKey> selectedTimeKeys = reportResultProviderService.getReportService().getRangeSelectedTimeKeys();
+ final List<ReportRunVariableEmhKey> variablesKeys = variableChooser.getKeysForCurrentRun(reportResultProviderService, toExport, topComponent.
+ getReportConfig().getEmhs());
+
+ final File f = chooseTargetFile();
+ if (f != null) {
+ ProgressRunnable runnable = new ProgressRunnable<Boolean>() {
+
+ @Override
+ public Boolean run(ProgressHandle handle) {
+ final ReportRunContent runCourant = reportResultProviderService.getRunCourant();
+ String currentRunName = runCourant.getScenario().getNom() + "-" + runCourant.getRun().getNom();
+ ReportExportTemporal exporter = new ReportExportTemporal(topComponent.getReportConfig(), reportResultProviderService, currentRunName);
+ exporter.export(variablesKeys, selectedTimeKeys, f);
+ return Boolean.TRUE;
+ }
+ };
+ execute(runnable, f);
+
+ }
+
+ }
+ }
+
+}
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalTimeChooser.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalTimeChooser.java 2015-10-09 19:53:32 UTC (rev 9184)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalTimeChooser.java 2015-10-09 23:02:45 UTC (rev 9185)
@@ -64,8 +64,7 @@
});
pn.add(new JScrollPane(list));
pn.add(selectAll, BorderLayout.NORTH);
- String title = org.openide.util.NbBundle.getMessage(ReportLongitudinalTimeChooser.class, "ChooseTime.DialogTitle",
- "vueProfilLongitudinalConfigurationPasDeTemps", PerspectiveEnum.REPORT);
+ String title = org.openide.util.NbBundle.getMessage(ReportLongitudinalTimeChooser.class, "ChooseTime.DialogTitle");
boolean ok = DialogHelper.showQuestionAndSaveDialogConf(title, pn, getClass(), "vueProfilLongitudinal_ConfigurationPasDeTemps",
PerspectiveEnum.REPORT, true);
if (ok) {
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalCourbesUiResController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalCourbesUiResController.java 2015-10-09 19:53:32 UTC (rev 9184)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalCourbesUiResController.java 2015-10-09 23:02:45 UTC (rev 9185)
@@ -25,6 +25,7 @@
tableAction.setShowColumnToExport(false);
tableAction.setDisplayAll(true);
tableAction.setShowLabel(true);
+
}
@Override
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalTopComponent.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalTopComponent.java 2015-10-09 19:53:32 UTC (rev 9184)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalTopComponent.java 2015-10-09 23:02:45 UTC (rev 9185)
@@ -1,5 +1,6 @@
package org.fudaa.fudaa.crue.report.temporal;
+import org.fudaa.fudaa.crue.report.export.ReportTemporalExportAction;
import org.fudaa.dodico.crue.projet.report.persist.ReportTemporalConfig;
import com.memoire.bu.BuGridLayout;
import java.awt.BorderLayout;
@@ -12,6 +13,7 @@
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
+import java.util.MissingResourceException;
import java.util.Set;
import javax.swing.JComboBox;
import javax.swing.JLabel;
@@ -113,6 +115,7 @@
@Override
protected CourbesUiResController createCourbesUiController() {
CourbesUiResController res = new ReportTemporalCourbesUiResController();
+ res.addToolbarAction(new ReportTemporalExportAction(this));
return res;
}
@@ -181,15 +184,7 @@
}
public void chooseVariable() {
- EnumCatEMH usedCat = ChooseEMHByTypeHelper.getUsedCat(reportService, content.getEmhs());
- if (CollectionUtils.isNotEmpty(content.getEmhs())
- && usedCat == null) {
- DialogHelper.showWarn(org.openide.util.NbBundle.getMessage(ChooseEMHByTypeHelper.class, "UsedEMHNotFound.warning"));
- }
- OrdResExtractor extractor = new OrdResExtractor(getScenario().getOrdResScenario());
- List<String> selectedVariables = extractor.getSelectableVariables(usedCat, reportFormuleService.getVariablesKeys());
- selectedVariables.add(0, null);
- String[] selectedVariablesArray = (String[]) selectedVariables.toArray(new String[selectedVariables.size()]);
+ String[] selectedVariablesArray = getChoosableVariables();
ReportVariableCellRenderer cellRenderer = new ReportVariableCellRenderer();
ByRunSelector selector = new ByRunSelector();
@@ -231,7 +226,7 @@
}
}
}
-
+
boolean accepted = DialogHelper.showQuestionOkCancel(NbBundle.getMessage(ReportTemporalTopComponent.class, "ChooseVariable.ButtonName"), pn);
if (accepted) {
content.getVariables().clear();
@@ -273,6 +268,19 @@
}
}
+ public String[] getChoosableVariables() throws MissingResourceException {
+ EnumCatEMH usedCat = ChooseEMHByTypeHelper.getUsedCat(reportService, content.getEmhs());
+ if (CollectionUtils.isNotEmpty(content.getEmhs())
+ && usedCat == null) {
+ DialogHelper.showWarn(org.openide.util.NbBundle.getMessage(ChooseEMHByTypeHelper.class, "UsedEMHNotFound.warning"));
+ }
+ OrdResExtractor extractor = new OrdResExtractor(getScenario().getOrdResScenario());
+ List<String> selectedVariables = extractor.getSelectableVariables(usedCat, reportFormuleService.getVariablesKeys());
+ selectedVariables.add(0, null);
+ String[] selectedVariablesArray = (String[]) selectedVariables.toArray(new String[selectedVariables.size()]);
+ return selectedVariablesArray;
+ }
+
@Override
protected void saveCourbeConfig(EGCourbePersist persitUiConfig, ReportKeyContract key) {
if (ReportVerticalTimeKey.isTimeKey(key)) {
Modified: trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/Bundle.properties
===========================================...
[truncated message content] |
|
From: <de...@us...> - 2015-10-14 22:13:06
|
Revision: 9190
http://sourceforge.net/p/fudaa/svn/9190
Author: deniger
Date: 2015-10-14 22:13:03 +0000 (Wed, 14 Oct 2015)
Log Message:
-----------
CRUE-644
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/ReportExportProfilLongitudinal.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/data/ReportVariableChooser.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportCourbeExportActionAbstract.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportLongitudinalExportAction.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportMulitVarExportAction.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportProfilLongitudinalTopComponent.java
trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/export/Bundle.properties
Modified: trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/ReportExportProfilLongitudinal.java
===================================================================
--- trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/ReportExportProfilLongitudinal.java 2015-10-13 21:03:58 UTC (rev 9189)
+++ trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/ReportExportProfilLongitudinal.java 2015-10-14 22:13:03 UTC (rev 9190)
@@ -21,6 +21,7 @@
import org.fudaa.dodico.crue.config.ccm.DecimalFormatEpsilonEnum;
import org.fudaa.dodico.crue.config.ccm.ItemEnum;
import org.fudaa.dodico.crue.config.ccm.ItemVariable;
+import org.fudaa.dodico.crue.config.ccm.PropertyNature;
import org.fudaa.dodico.crue.config.lit.LitNommeLimite;
import org.fudaa.dodico.crue.config.lit.ReportLongitudinalLimitHelper;
import org.fudaa.dodico.crue.metier.emh.CatEMHSection;
@@ -89,7 +90,8 @@
for (ResultatTimeKey time : times) {
for (ReportRunVariableKey variable : variablesToExport) {
row.createCell(idx++).setCellValue(
- variable.getDisplayName() + " - " + ResultatTimeKey.timeToString(time) + " - " + variable.getReportRunKey().getDisplayName());
+ variable.getVariable().getVariableDisplayName() + " - " + ResultatTimeKey.timeToString(time) + " - " + variable.getReportRunKey().
+ getDisplayName());
}
}
final List<ReportLongitudinalBrancheConfig> branchesConfig = content.getBranchesConfig();
@@ -110,8 +112,9 @@
final List<ReportLongitudinalBrancheCartouche> cartouches = result.getCartouches();
//les styles commun
final CellStyle xpStyle = formater.getStyle(propertyXp.getNature(), DecimalFormatEpsilonEnum.COMPARISON);
+ final PropertyNature natureForZ = resultService.getCcm().getProperty(CrueConfigMetierConstants.PROP_Z).getNature();
final CellStyle zStyle = formater.
- getStyle(resultService.getCcm().getNature(CrueConfigMetierConstants.PROP_Z), DecimalFormatEpsilonEnum.COMPARISON);
+ getStyle(natureForZ, DecimalFormatEpsilonEnum.COMPARISON);
for (ReportLongitudinalBrancheCartouche cartouche : cartouches) {
final ReportLongitudinalPositionSectionByRun sectionPositions = cartouche.getSectionPositions(runCourant);
final List<ReportLongitudinalPositionSection> sectionDisplayPositions = sectionPositions.getSectionDisplayPositions();
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/data/ReportVariableChooser.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/data/ReportVariableChooser.java 2015-10-13 21:03:58 UTC (rev 9189)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/data/ReportVariableChooser.java 2015-10-14 22:13:03 UTC (rev 9190)
@@ -38,7 +38,8 @@
this.currentSelected = currentSelected;
}
- public List<ReportRunVariableEmhKey> getKeysForCurrentRun(ReportResultProviderService reportService, List<String> variables, List<String> emhs) {
+ public static List<ReportRunVariableEmhKey> getKeysForCurrentRun(ReportResultProviderService reportService, List<String> variables,
+ List<String> emhs) {
List<ReportRunVariableEmhKey> res = new ArrayList<>();
if (variables != null) {
for (String variable : variables) {
@@ -53,14 +54,14 @@
}
- public List<ReportRunVariableEmhKey> getKeysForRuns(ReportResultProviderService reportService, List<String> variables, List<String> emhs,
+ public static List<ReportRunVariableEmhKey> getKeysForRuns(ReportResultProviderService reportService, List<String> variables, List<String> emhs,
List<ReportRunKey> runkeys) {
List<ReportRunVariableEmhKey> res = new ArrayList<>();
if (variables != null) {
- for (String variable : variables) {
- final ReportVariableKey createVariableKey = reportService.createVariableKey(variable);
+ for (ReportRunKey runkey : runkeys) {
for (String emh : emhs) {
- for (ReportRunKey runkey : runkeys) {
+ for (String variable : variables) {
+ final ReportVariableKey createVariableKey = reportService.createVariableKey(variable);
ReportRunVariableEmhKey key = new ReportRunVariableEmhKey(runkey, createVariableKey, emh);
res.add(key);
}
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportCourbeExportActionAbstract.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportCourbeExportActionAbstract.java 2015-10-13 21:03:58 UTC (rev 9189)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportCourbeExportActionAbstract.java 2015-10-14 22:13:03 UTC (rev 9190)
@@ -11,6 +11,7 @@
import java.util.HashSet;
import java.util.List;
import java.util.Set;
+import org.fudaa.ctulu.CtuluLibFile;
import org.fudaa.ctulu.gui.CtuluExportTableChooseFile;
import org.fudaa.ctulu.gui.CtuluFileChooserCsvExcel;
import org.fudaa.dodico.crue.metier.comparator.ObjetNommeByNameComparator;
@@ -61,10 +62,7 @@
@Override
public void actionPerformed(ActionEvent _e) {
- final List<String> choosableVariables = getChoosableVariables();
- final Set<String> selectedVariables = getCurrentSelectedVariables();
- ReportVariableChooser variableChooser = new ReportVariableChooser(choosableVariables, selectedVariables);
- final List<String> toExport = variableChooser.choose();
+ List<String> toExport = chooseVariables();
if (!toExport.isEmpty()) {
//on récupère tous les runs configurés pour la vue en question.
final ReportResultProviderService reportResultProviderService = Lookup.getDefault().lookup(ReportResultProviderService.class);
@@ -75,11 +73,21 @@
keys.addAll(runKey);
Collections.sort(keys, ObjetNommeByNameComparator.INSTANCE);
final List<ResultatTimeKey> selectedTimeKeys = reportResultProviderService.getReportService().getRangeSelectedTimeKeys();
- final List<ReportRunVariableEmhKey> variablesKeys = variableChooser.getKeysForRuns(reportResultProviderService, toExport,
+ final List<ReportRunVariableEmhKey> variablesKeys = ReportVariableChooser.getKeysForRuns(reportResultProviderService, toExport,
ReportCourbeExportActionAbstract.this.getEMHs(), keys);
final File f = chooseTargetFile();
if (f != null) {
+ String error = CtuluLibFile.canWrite(f);
+ if (error == null && f.exists() && !f.delete()) {
+ error = org.openide.util.NbBundle.getMessage(ReportCourbeExportActionAbstract.class, "cantWriteToFileUsedByAnotherProcess.error");
+ }
+ if (error != null) {
+ DialogHelper.showError(org.openide.util.NbBundle.getMessage(ReportCourbeExportActionAbstract.class, "cantWriteToFile.error", f.getName(),
+ error));
+ return;
+
+ }
ProgressRunnable runnable = new ProgressRunnable<Boolean>() {
@Override
@@ -96,6 +104,14 @@
}
}
+ protected List<String> chooseVariables() {
+ final List<String> choosableVariables = getChoosableVariables();
+ final Set<String> selectedVariables = getCurrentSelectedVariables();
+ ReportVariableChooser variableChooser = new ReportVariableChooser(choosableVariables, selectedVariables);
+ final List<String> toExport = variableChooser.choose();
+ return toExport;
+ }
+
protected File chooseTargetFile() {
final CtuluFileChooserCsvExcel choose = new CtuluFileChooserCsvExcel(CtuluUIForNetbeans.DEFAULT);
choose.removeChoosableFileFilter(choose.getFtCsv());
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportLongitudinalExportAction.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportLongitudinalExportAction.java 2015-10-13 21:03:58 UTC (rev 9189)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportLongitudinalExportAction.java 2015-10-14 22:13:03 UTC (rev 9190)
@@ -11,11 +11,13 @@
import java.util.List;
import java.util.Set;
import java.util.TreeSet;
+import org.fudaa.ctulu.CtuluLibFile;
import org.fudaa.dodico.crue.metier.comparator.ObjetNommeByNameComparator;
import org.fudaa.dodico.crue.metier.emh.ResultatTimeKey;
import org.fudaa.dodico.crue.projet.report.data.ReportRunKey;
import org.fudaa.dodico.crue.projet.report.data.ReportRunVariableKey;
import org.fudaa.dodico.crue.projet.report.export.ReportExportProfilLongitudinal;
+import org.fudaa.fudaa.crue.common.helper.DialogHelper;
import org.fudaa.fudaa.crue.report.data.ReportVariableChooser;
import org.fudaa.fudaa.crue.report.longitudinal.ReportProfilLongitudinalTopComponent;
import org.fudaa.fudaa.crue.report.service.ReportResultProviderService;
@@ -40,7 +42,7 @@
@Override
protected List<String> getChoosableVariables() {
- final List<String> choosableVariables = topComponent.getChoosableVariables();
+ final List<String> choosableVariables = topComponent.getChoosableVariablesForExport();
choosableVariables.remove(null);
return choosableVariables;
}
@@ -58,6 +60,11 @@
if (var != null) {
res.add(var);
}
+ final List<String> variablesAsZDrawn = topComponent.getReportConfig().
+ getVariablesAsZDrawn(reportResultProviderService.getRunCourant().getRunKey(), reportResultProviderService);
+ if (variablesAsZDrawn != null) {
+ res.addAll(variablesAsZDrawn);
+ }
return res;
}
@@ -83,7 +90,18 @@
final List<ReportRunVariableKey> variablesKeys = variableChooser.getKeysForRuns(reportResultProviderService, toExport, keys);
final File f = chooseTargetFile();
+
if (f != null) {
+ String error = CtuluLibFile.canWrite(f);
+ if (error == null && f.exists() && !f.delete()) {
+ error = org.openide.util.NbBundle.getMessage(ReportCourbeExportActionAbstract.class, "cantWriteToFileUsedByAnotherProcess.error");
+ }
+ if (error != null) {
+ DialogHelper.showError(org.openide.util.NbBundle.getMessage(ReportCourbeExportActionAbstract.class, "cantWriteToFile.error", f.getName(),
+ error));
+ return;
+
+ }
ProgressRunnable runnable = new ProgressRunnable<Boolean>() {
@Override
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportMulitVarExportAction.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportMulitVarExportAction.java 2015-10-13 21:03:58 UTC (rev 9189)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportMulitVarExportAction.java 2015-10-14 22:13:03 UTC (rev 9190)
@@ -30,6 +30,15 @@
}
@Override
+ protected List<String> chooseVariables() {
+ final List<String> chooseVariables = super.chooseVariables();
+ if (!chooseVariables.isEmpty()) {
+ chooseVariables.add(0, topComponent.getReportConfig().getHorizontalVar());
+ }
+ return chooseVariables;
+ }
+
+ @Override
protected List<String> getChoosableVariables() {
final List<String> choosableVariables = new ArrayList<>(topComponent.getChoosableVariables());
choosableVariables.remove(null);
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportProfilLongitudinalTopComponent.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportProfilLongitudinalTopComponent.java 2015-10-13 21:03:58 UTC (rev 9189)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportProfilLongitudinalTopComponent.java 2015-10-14 22:13:03 UTC (rev 9190)
@@ -11,8 +11,12 @@
import javax.swing.Action;
import javax.swing.JPanel;
import javax.swing.JSplitPane;
+import org.fudaa.dodico.crue.config.ccm.CrueConfigMetier;
+import org.fudaa.dodico.crue.metier.emh.EMHScenario;
+import org.fudaa.dodico.crue.metier.emh.EnumCatEMH;
import org.fudaa.dodico.crue.metier.emh.OrdResScenario;
import org.fudaa.dodico.crue.metier.emh.OrdResSection;
+import org.fudaa.dodico.crue.metier.helper.ResPrtHelper;
import org.fudaa.dodico.crue.metier.result.OrdResExtractor;
import org.fudaa.dodico.crue.metier.result.OrdResVariableSelection;
import org.fudaa.ebli.commun.EbliActionInterface;
@@ -25,12 +29,14 @@
import org.fudaa.dodico.crue.projet.report.data.ReportExpressionHelper;
import org.fudaa.dodico.crue.projet.report.data.ReportKeyContract;
import org.fudaa.dodico.crue.projet.report.data.ReportRunKey;
+import org.fudaa.dodico.crue.projet.report.data.ReportRunVariableHelper;
import org.fudaa.dodico.crue.projet.report.data.ReportRunVariableKey;
import org.fudaa.dodico.crue.projet.report.data.ReportRunVariableTimeKey;
import org.fudaa.dodico.crue.projet.report.data.ReportVariableKey;
import org.fudaa.dodico.crue.projet.report.data.ReportVariableTypeEnum;
import org.fudaa.fudaa.crue.report.export.ReportLongitudinalExportAction;
import org.fudaa.fudaa.crue.report.service.ReportFormuleService;
+import org.fudaa.fudaa.crue.report.service.ReportResultProviderService;
import org.netbeans.api.settings.ConvertAsProperties;
import org.openide.util.Lookup;
import org.openide.util.NbBundle;
@@ -150,8 +156,25 @@
}
}
- public List<String> getChoosableVariables() {
- return new ReportLongitudinalRightVariableChooser(content).getChoosableVariables();
+ public List<String> getChoosableVariablesForExport() {
+ final List<String> choosableVariables = new ReportLongitudinalRightVariableChooser(content).getChoosableVariables();
+ //ajout des variables z
+ ReportResultProviderService reportResultProviderService = Lookup.getDefault().lookup(ReportResultProviderService.class);
+ EMHScenario scenario = reportService.getRunCourant().getScenario();
+ OrdResExtractor extractor = new OrdResExtractor(scenario.getOrdResScenario());
+ List<String> selectableVariables = extractor.getSelectableVariables(EnumCatEMH.SECTION, reportFormuleService.getVariablesKeys());
+ //on ne conserve que les variables qui sont affichées sur l'axe des z:
+ for (Iterator<String> it = selectableVariables.iterator(); it.hasNext();) {
+ String string = it.next();
+ if (ReportRunVariableHelper.isZOrDzNature(string, reportResultProviderService)) {
+ choosableVariables.add(string);
+ it.remove();
+ }
+ }
+ // ajout Zini issu du RPTI
+ List<String> varZIni = ResPrtHelper.getZiniVar();
+ choosableVariables.addAll(varZIni);
+ return choosableVariables;
}
protected void chooseRightVariable() {
Modified: trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/export/Bundle.properties
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/export/Bundle.properties 2015-10-13 21:03:58 UTC (rev 9189)
+++ trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/export/Bundle.properties 2015-10-14 22:13:03 UTC (rev 9190)
@@ -15,4 +15,6 @@
DefaultExportType=type export: action exporter perspective Rapports
ExportAll.Action=Exporter\n
ExportAll.Tootltip=Export en masse
-ExportEnded=Export termin\u00e9 vers le fichier {0}
\ No newline at end of file
+ExportEnded=Export termin\u00e9 vers le fichier {0}
+cantWriteToFile.error=Il est impossible d'\u00e9crire dans le fichier {0}.\nRaison: {1}
+cantWriteToFileUsedByAnotherProcess.error=il est probablement ouvert par une autre application (Excel)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2015-11-05 22:02:13
|
Revision: 9192
http://sourceforge.net/p/fudaa/svn/9192
Author: deniger
Date: 2015-11-05 22:02:10 +0000 (Thu, 05 Nov 2015)
Log Message:
-----------
CRUE-644
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnable.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopComponent.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopExportImportPopupBuilder.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportValue.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImporter.java
trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/calcul/importer/Bundle.properties
trunk/soft/fudaa-crue/ui-views/src/main/java/org/fudaa/fudaa/crue/views/DonCLimMLineBuilder.java
trunk/soft/fudaa-crue/ui-views/src/main/java/org/fudaa/fudaa/crue/views/DonClimMTableModel.java
Added Paths:
-----------
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportData.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportLine.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportLinesBuilder.java
Removed Paths:
-------------
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportKey.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportKeyFromArray.java
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnable.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnable.java 2015-11-05 22:01:14 UTC (rev 9191)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnable.java 2015-11-05 22:02:10 UTC (rev 9192)
@@ -22,6 +22,7 @@
import org.apache.poi.ss.usermodel.WorkbookFactory;
import org.fudaa.ctulu.CtuluLibFile;
import org.fudaa.fudaa.crue.modelling.calcul.importer.CLimMsImporter;
+import org.fudaa.fudaa.crue.views.DonClimMTableModel;
import org.netbeans.api.progress.ProgressHandle;
import org.netbeans.api.progress.ProgressRunnable;
import org.openide.util.Exceptions;
@@ -30,7 +31,7 @@
*
* @author Frederic Deniger
*/
-public class ModellingListCLimMsProgressRunnable implements ProgressRunnable<Object> {
+public class ModellingListCLimMsProgressRunnable implements ProgressRunnable<DonClimMTableModel> {
private File file;
private final ModellingListCLimMsTopComponent topComponent;
@@ -47,8 +48,7 @@
}
@Override
- public Object run(ProgressHandle handle) {
- Reader reader = null;
+ public DonClimMTableModel run(ProgressHandle handle) {
String[][] values = null;
if (initValues != null) {
char sep = '\t';
@@ -62,10 +62,9 @@
if (values == null) {
return null;
}
- CLimMsImporter importer = new CLimMsImporter(topComponent.getCcm(), topComponent.getScenario().getLoiConteneur(), values);
+ CLimMsImporter importer = new CLimMsImporter(topComponent.getCcm(), topComponent.getScenario(), values);
importer.setTableModel(topComponent.tableModel);
- importer.importData();
- return null;
+ return importer.importData();
}
protected String getValue(Cell cell) {
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopComponent.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopComponent.java 2015-11-05 22:01:14 UTC (rev 9191)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopComponent.java 2015-11-05 22:02:10 UTC (rev 9192)
@@ -70,9 +70,34 @@
@Override
public ExplorerManager getExplorerManager() {
return null;
-// return helper.getExplorerManager();
}
+ protected void rebuildCenterFor(DonClimMTableModel newModel) {
+ JComponent oldCenter = CtuluLibSwing.findChildByName(this, CENTER_NAME);
+ remove(oldCenter);
+ setDoubleBuffered(false);
+ final ModellingOpenDLHYAction loiDisplayer = new ModellingOpenDLHYAction();
+ final ModellingListCLimMsTopExportImportPopupBuilder popupReceiver = new ModellingListCLimMsTopExportImportPopupBuilder(
+ this, loiDisplayer);
+ Pair<JScrollPane, DonClimMTableModel> createScrollPane = new DonCLimMLineBuilder().createScrollPane(newModel, getCcm(), getScenario(), true,
+ loiDisplayer,
+ popupReceiver);
+ tableModel = createScrollPane.second;
+ final JScrollPane newCenter = createScrollPane.first;
+ popupReceiver.install(newCenter);
+ tableModel.addTableModelListener(new TableModelListener() {
+ @Override
+ public void tableChanged(TableModelEvent e) {
+ setModified(true);
+ }
+ });
+ add(newCenter);
+ revalidate();
+ repaint();
+ newCenter.revalidate();
+ newCenter.repaint();
+ }
+
@Override
protected void scenarioUnloaded() {
super.scenarioUnloaded();
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopExportImportPopupBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopExportImportPopupBuilder.java 2015-11-05 22:01:14 UTC (rev 9191)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopExportImportPopupBuilder.java 2015-11-05 22:02:10 UTC (rev 9192)
@@ -16,6 +16,7 @@
import org.fudaa.ctulu.gui.CtuluTableSimpleExporter;
import org.fudaa.fudaa.crue.common.helper.CrueProgressUtils;
import org.fudaa.fudaa.crue.common.helper.CtuluUIForNetbeans;
+import org.fudaa.fudaa.crue.views.DonClimMTableModel;
import org.fudaa.fudaa.crue.views.LoiDisplayer;
import org.fudaa.fudaa.crue.views.LoiDisplayerInstaller;
import org.fudaa.fudaa.crue.views.export.DonClimMExportTableModel;
@@ -70,8 +71,12 @@
ModellingListCLimMsTopExportImportPopupBuilder.class,
"button.import.name"));
if (res == JFileChooser.APPROVE_OPTION) {
- CrueProgressUtils.showProgressDialogAndRun(new ModellingListCLimMsProgressRunnable(fileChooser.getSelectedFile(), tc), NbBundle.
+ final DonClimMTableModel result = CrueProgressUtils.showProgressDialogAndRun(new ModellingListCLimMsProgressRunnable(fileChooser.
+ getSelectedFile(), tc), NbBundle.
getMessage(ModellingListCLimMsTopExportImportPopupBuilder.class, "button.import.name"));
+ if (result != null) {
+ tc.rebuildCenterFor(result);
+ }
}
}
Added: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportData.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportData.java (rev 0)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportData.java 2015-11-05 22:02:10 UTC (rev 9192)
@@ -0,0 +1,27 @@
+/*
+ GPL 2
+ */
+package org.fudaa.fudaa.crue.modelling.calcul.importer;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ *
+ * @author Frederic Deniger
+ */
+public class CLimMsImportData {
+
+ private final List<CLimMsImportLine> calculs = new ArrayList<>();
+ private final List<String> emhs = new ArrayList<>();
+
+ public List<CLimMsImportLine> getCalculs() {
+ return calculs;
+ }
+
+ public List<String> getEmhs() {
+ return emhs;
+ }
+
+
+}
Deleted: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportKey.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportKey.java 2015-11-05 22:01:14 UTC (rev 9191)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportKey.java 2015-11-05 22:02:10 UTC (rev 9192)
@@ -1,58 +0,0 @@
-/*
- GPL 2
- */
-package org.fudaa.fudaa.crue.modelling.calcul.importer;
-
-/**
- *
- * @author Frederic Deniger
- */
-public class CLimMsImportKey {
-
- private final String emh;
- private final String calculId;
-
- public CLimMsImportKey(String emhId, String calculId) {
- this.emh = emhId;
- this.calculId = calculId;
- }
-
- @Override
- public int hashCode() {
- int hash = 7;
- hash = 59 * hash + (this.emh != null ? this.emh.hashCode() : 0);
- hash = 59 * hash + (this.calculId != null ? this.calculId.hashCode() : 0);
- return hash;
- }
-
- public String getEmh() {
- return emh;
- }
-
- public String getCalculId() {
- return calculId;
- }
-
- @Override
- public String toString() {
- return calculId + ", " + emh;
- }
-
- @Override
- public boolean equals(Object obj) {
- if (obj == null) {
- return false;
- }
- if (getClass() != obj.getClass()) {
- return false;
- }
- final CLimMsImportKey other = (CLimMsImportKey) obj;
- if ((this.emh == null) ? (other.emh != null) : !this.emh.equals(other.emh)) {
- return false;
- }
- if ((this.calculId == null) ? (other.calculId != null) : !this.calculId.equals(other.calculId)) {
- return false;
- }
- return true;
- }
-}
Deleted: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportKeyFromArray.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportKeyFromArray.java 2015-11-05 22:01:14 UTC (rev 9191)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportKeyFromArray.java 2015-11-05 22:02:10 UTC (rev 9192)
@@ -1,72 +0,0 @@
-/*
- GPL 2
- */
-package org.fudaa.fudaa.crue.modelling.calcul.importer;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.lang.StringUtils;
-import org.fudaa.ctulu.CtuluLog;
-import org.fudaa.dodico.crue.common.io.CrueIOResu;
-import org.openide.util.NbBundle;
-
-/**
- *
- * @author Frederic Deniger
- */
-public class CLimMsImportKeyFromArray {
-
- public CLimMsImportKeyFromArray() {
- }
-
- public CrueIOResu<Map<CLimMsImportKey, CLimMsImportValue>> extract(String[][] values) {
- CrueIOResu<Map<CLimMsImportKey, CLimMsImportValue>> ioRes = new CrueIOResu<Map<CLimMsImportKey, CLimMsImportValue>>();
- Map<CLimMsImportKey, CLimMsImportValue> res = new HashMap<CLimMsImportKey, CLimMsImportValue>();
- CtuluLog log = new CtuluLog();
- //on parse les colonne
- //calcul;EMH 1 (;
- ioRes.setAnalyse(log);
- ioRes.setMetier(res);
- if (values.length == 0) {
- return ioRes;
- }
- final int nbColumns = values[0].length;
- if (nbColumns % 2 == 0) {
- log.addSevereError(NbBundle.getMessage(CLimMsImportKeyFromArray.class, "climImport.wrongColumnsNumber"));
- return ioRes;
- }
- List<String> emhs = new ArrayList<String>();
- for (int i = 1; i < nbColumns; i += 2) {
- String emh1 = StringUtils.substringBeforeLast(values[0][i], "(").trim();
- String emh2 = StringUtils.substringBeforeLast(values[0][i + 1], "(").trim();
- if (!StringUtils.equals(emh1, emh2)) {
- log.addSevereError(NbBundle.getMessage(CLimMsImportKeyFromArray.class, "climImport.wrongColumnsOrganization"));
- } else {
- emhs.add(emh1);
- }
- }
- final int nbEmhs = emhs.size();
- for (int row = 1; row < values.length; row++) {
- String[] val = values[row];
- if (val.length != nbColumns) {
- log.addSevereError(NbBundle.getMessage(CLimMsImportKeyFromArray.class, "climImport.ligneWithWrongColumnsNumber"), Integer.
- toString(row + 1));
- return ioRes;
- }
- String calcId = val[0];
- for (int i = 0; i < nbEmhs; i++) {
- CLimMsImportKey key = new CLimMsImportKey(emhs.get(i), calcId);
- CLimMsImportValue value = new CLimMsImportValue(val[1 + 2 * i], val[2 + 2 * i]);
- res.put(key, value);
- }
- }
- if (log.containsErrorOrSevereError()) {
- return ioRes;
- }
-
-
- return ioRes;
- }
-}
Copied: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportLine.java (from rev 9158, trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportKey.java)
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportLine.java (rev 0)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportLine.java 2015-11-05 22:02:10 UTC (rev 9192)
@@ -0,0 +1,65 @@
+/*
+ GPL 2
+ */
+package org.fudaa.fudaa.crue.modelling.calcul.importer;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
+import org.fudaa.dodico.crue.metier.factory.CruePrefix;
+
+/**
+ *
+ * @author Frederic Deniger
+ */
+public class CLimMsImportLine {
+
+ private final String calculId;
+ private final List<CLimMsImportValue> values = new ArrayList<>();
+
+ public CLimMsImportLine(String calculId) {
+ this.calculId = calculId;
+ }
+
+ public String getCalculId() {
+ return calculId;
+ }
+
+ public List<CLimMsImportValue> getValues() {
+ return values;
+ }
+
+ public boolean isNameValide() {
+ return calculId.startsWith(CruePrefix.P_CALCUL_PSEUDOPERMANENT) || calculId.startsWith(CruePrefix.P_CALCUL_TRANSITOIRE);
+ }
+
+ public boolean isTransitoire() {
+ return calculId.startsWith(CruePrefix.P_CALCUL_TRANSITOIRE);
+ }
+ public boolean isPermanent() {
+ return calculId.startsWith(CruePrefix.P_CALCUL_PSEUDOPERMANENT);
+ }
+
+ @Override
+ public int hashCode() {
+ int hash = 7;
+ hash = 97 * hash + Objects.hashCode(this.calculId);
+ return hash;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final CLimMsImportLine other = (CLimMsImportLine) obj;
+ if (!Objects.equals(this.calculId, other.calculId)) {
+ return false;
+ }
+ return true;
+ }
+
+}
Copied: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportLinesBuilder.java (from rev 9158, trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportKeyFromArray.java)
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportLinesBuilder.java (rev 0)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportLinesBuilder.java 2015-11-05 22:02:10 UTC (rev 9192)
@@ -0,0 +1,87 @@
+/*
+ GPL 2
+ */
+package org.fudaa.fudaa.crue.modelling.calcul.importer;
+
+import java.util.HashSet;
+import java.util.Set;
+import org.apache.commons.lang.StringUtils;
+import org.fudaa.ctulu.CtuluLog;
+import org.fudaa.dodico.crue.common.io.CrueIOResu;
+import org.openide.util.NbBundle;
+
+/**
+ * Permet simplement de lire les données. Ne fait pas de tests métiers sur les données. Test uniquement si doublons dans les données
+ *
+ * @author Frederic Deniger
+ */
+public class CLimMsImportLinesBuilder {
+
+ public CLimMsImportLinesBuilder() {
+ }
+
+ public CrueIOResu<CLimMsImportData> extract(String[][] values) {
+ CrueIOResu<CLimMsImportData> ioRes = new CrueIOResu<>();
+ CLimMsImportData res = new CLimMsImportData();
+ CtuluLog log = new CtuluLog();
+ //on parse les colonne
+ //calcul;EMH 1 (;
+ ioRes.setAnalyse(log);
+ ioRes.setMetier(res);
+ if (values.length == 0) {
+ return ioRes;
+ }
+ final int nbColumns = values[0].length;
+ if (nbColumns % 2 == 0) {
+ log.addSevereError(NbBundle.getMessage(CLimMsImportLinesBuilder.class, "climImport.wrongColumnsNumber"));
+ return ioRes;
+ }
+ for (int i = 1; i < nbColumns; i += 2) {
+ String emh1 = StringUtils.substringBeforeLast(values[0][i], "(").trim();
+ String emh2 = StringUtils.substringBeforeLast(values[0][i + 1], "(").trim();
+ if (!StringUtils.equals(emh1, emh2)) {
+ log.addSevereError(NbBundle.getMessage(CLimMsImportLinesBuilder.class, "climImport.wrongColumnsOrganization"));
+ } else if (res.getEmhs().contains(emh1)) {
+ log.addSevereError(NbBundle.getMessage(CLimMsImportLinesBuilder.class, "climImport.doublonEMH", emh1));
+ } else {
+ res.getEmhs().add(emh1);
+ }
+ }
+ final int nbEmhs = res.getEmhs().size();
+ Set<String> definedCalcul = new HashSet<>();
+ for (int row = 1; row < values.length; row++) {
+ String[] val = values[row];
+ if (val.length > nbColumns) {
+ log.addSevereError(NbBundle.getMessage(CLimMsImportLinesBuilder.class, "climImport.ligneWithWrongColumnsNumber"), Integer.
+ toString(row + 1), Integer.toString(nbColumns));
+ return ioRes;
+ }
+ String calcId = val[0];
+ if (definedCalcul.contains(calcId)) {
+ log.addSevereError(NbBundle.getMessage(CLimMsImportLinesBuilder.class, "climImport.doublonCalcul"), calcId);
+ }
+ definedCalcul.add(calcId);
+ CLimMsImportLine line = new CLimMsImportLine(calcId);
+ boolean existing = false;
+ for (int i = 0; i < nbEmhs; i++) {
+ String emh = res.getEmhs().get(i);
+ int idxCol = 2 + 2 * i;
+ if (val.length > idxCol) {
+ CLimMsImportValue value = new CLimMsImportValue(emh, val[idxCol - 1], val[idxCol]);
+ if (StringUtils.isNotBlank(value.getTypeClimM()) && StringUtils.isNotBlank(value.getValue())) {
+ line.getValues().add(value);
+ existing = true;
+ }
+ }
+ }
+ if (existing) {
+ res.getCalculs().add(line);
+ }
+ }
+ if (log.containsErrorOrSevereError()) {
+ return ioRes;
+ }
+
+ return ioRes;
+ }
+}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportValue.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportValue.java 2015-11-05 22:01:14 UTC (rev 9191)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImportValue.java 2015-11-05 22:02:10 UTC (rev 9192)
@@ -3,28 +3,38 @@
*/
package org.fudaa.fudaa.crue.modelling.calcul.importer;
+import java.util.Objects;
+
/**
*
* @author Frederic Deniger
*/
public class CLimMsImportValue {
+ private final String emh;
private final String typeClimM;
private final String value;
- public CLimMsImportValue(String typeClimM, String value) {
+ public CLimMsImportValue(String emh, String typeClimM, String value) {
+ this.emh = emh;
this.typeClimM = typeClimM;
this.value = value;
}
- @Override
- public int hashCode() {
- int hash = 7;
- hash = 59 * hash + (this.typeClimM != null ? this.typeClimM.hashCode() : 0);
- hash = 59 * hash + (this.value != null ? this.value.hashCode() : 0);
- return hash;
+ public String getEmh() {
+ return emh;
}
+
+ public boolean isPermanent() {
+ try {
+ Double.parseDouble(value);
+ return true;
+ } catch (NumberFormatException numberFormatException) {
+ }
+ return false;
+ }
+
public String getTypeClimM() {
return typeClimM;
}
@@ -39,6 +49,15 @@
}
@Override
+ public int hashCode() {
+ int hash = 7;
+ hash = 59 * hash + Objects.hashCode(this.emh);
+ hash = 59 * hash + Objects.hashCode(this.typeClimM);
+ hash = 59 * hash + Objects.hashCode(this.value);
+ return hash;
+ }
+
+ @Override
public boolean equals(Object obj) {
if (obj == null) {
return false;
@@ -47,12 +66,16 @@
return false;
}
final CLimMsImportValue other = (CLimMsImportValue) obj;
- if ((this.typeClimM == null) ? (other.typeClimM != null) : !this.typeClimM.equals(other.typeClimM)) {
+ if (!Objects.equals(this.emh, other.emh)) {
return false;
}
- if ((this.value == null) ? (other.value != null) : !this.value.equals(other.value)) {
+ if (!Objects.equals(this.typeClimM, other.typeClimM)) {
return false;
}
+ if (!Objects.equals(this.value, other.value)) {
+ return false;
+ }
return true;
}
+
}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImporter.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImporter.java 2015-11-05 22:01:14 UTC (rev 9191)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImporter.java 2015-11-05 22:02:10 UTC (rev 9192)
@@ -3,25 +3,29 @@
*/
package org.fudaa.fudaa.crue.modelling.calcul.importer;
+import gnu.trove.TLongObjectHashMap;
import java.util.ArrayList;
import java.util.Iterator;
-import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
-import java.util.Set;
-import org.apache.commons.lang.StringUtils;
+import java.util.MissingResourceException;
import org.fudaa.ctulu.CtuluLog;
import org.fudaa.dodico.crue.common.io.CrueIOResu;
import org.fudaa.dodico.crue.common.transformer.TransformerHelper;
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetier;
+import org.fudaa.dodico.crue.edition.bean.DonCLimMLineContent;
+import org.fudaa.dodico.crue.metier.emh.Calc;
+import org.fudaa.dodico.crue.metier.emh.CalcPseudoPerm;
import org.fudaa.dodico.crue.metier.emh.CalcPseudoPermBrancheOrificeManoeuvre;
import org.fudaa.dodico.crue.metier.emh.CalcPseudoPermItem;
+import org.fudaa.dodico.crue.metier.emh.CalcTrans;
import org.fudaa.dodico.crue.metier.emh.CalcTransBrancheOrificeManoeuvre;
import org.fudaa.dodico.crue.metier.emh.CalcTransItem;
import org.fudaa.dodico.crue.metier.emh.DonCLimM;
import org.fudaa.dodico.crue.metier.emh.DonCLimMCommonItem;
import org.fudaa.dodico.crue.metier.emh.DonLoiHYConteneur;
import org.fudaa.dodico.crue.metier.emh.EMH;
+import org.fudaa.dodico.crue.metier.emh.EMHScenario;
import org.fudaa.dodico.crue.metier.emh.EnumSensOuv;
import org.fudaa.dodico.crue.metier.emh.Loi;
import org.fudaa.dodico.crue.metier.factory.DclmFactory;
@@ -41,115 +45,145 @@
private final String[][] values;
private final CrueConfigMetier ccm;
private final DonLoiHYConteneur loiConteneur;
+ private final EMHScenario scenario;
- public CLimMsImporter(CrueConfigMetier ccm, DonLoiHYConteneur loiConteneur, String[][] values) {
+ public CLimMsImporter(CrueConfigMetier ccm, EMHScenario scenario, String[][] values) {
this.values = values;
this.ccm = ccm;
- this.loiConteneur = loiConteneur;
+ this.scenario = scenario;
+ this.loiConteneur = scenario.getLoiConteneur();
}
DonClimMTableModel model;
- public void importData() {
- CLimMsImportKeyFromArray fromArray = new CLimMsImportKeyFromArray();
- CrueIOResu<Map<CLimMsImportKey, CLimMsImportValue>> importedData = fromArray.extract(values);
+ public DonClimMTableModel importData() {
+ CLimMsImportLinesBuilder fromArray = new CLimMsImportLinesBuilder();
+ CrueIOResu<CLimMsImportData> importedData = fromArray.extract(values);
final CtuluLog log = importedData.getAnalyse();
if (log.containsErrorOrSevereError()) {
LogsDisplayer.displayError(log, NbBundle.getMessage(CLimMsImporter.class, "importCLimMs.bilan"));
- return;
+ return null;
}
- Map<CLimMsImportKey, CLimMsImportValue> metier = importedData.getMetier();
- Set<CLimMsImportKey> notComputedData = new LinkedHashSet<CLimMsImportKey>();
- notComputedData.addAll(metier.keySet());
+
+ CLimMsImportData importedValues = importedData.getMetier();
+ final Map<String, EMH> emhByNom = scenario.getIdRegistry().getEmhByNom();
+ CtuluLog logCheckEMH = valideImportDatas(emhByNom, importedValues);
+ if (logCheckEMH.containsErrorOrSevereError()) {
+ LogsDisplayer.displayError(logCheckEMH, NbBundle.getMessage(CLimMsImporter.class, "importCLimMs.bilan"));
+ return null;
+ }
+ List<DonCLimMLineContent> dclimFinal = new ArrayList<>();
+ List<EMH> emhsFinal = new ArrayList<>();
+ for (String emh : importedValues.getEmhs()) {
+ emhsFinal.add(emhByNom.get(emh));
+ }
String versHaut = EnumSensOuv.OUV_VERS_HAUT.geti18n();
String versBas = EnumSensOuv.OUV_VERS_BAS.geti18n();
- for (int col = 0; col < model.getColumnCount(); col++) {
- for (int row = 0; row < model.getRowCount(); row++) {
- DonCLimM currentCLimM = (DonCLimM) model.getValueAt(row, col);
- if (currentCLimM == null) {
- continue;
+ for (CLimMsImportLine imported : importedValues.getCalculs()) {
+ //pas de lignes: on ignore
+ if (imported.getValues().isEmpty()) {
+ continue;
+ }
+// DonCLimM currentCLimM = (DonCLimM) model.getValueAt(row, col);
+ String calculName = imported.getCalculId();
+ boolean transitoire = imported.isTransitoire();
+ Calc newCalcul = transitoire ? new CalcTrans() : new CalcPseudoPerm();
+ newCalcul.setNom(calculName);
+ final TLongObjectHashMap<DonCLimM> valueByEmhUid = new TLongObjectHashMap<>();
+ dclimFinal.add(new DonCLimMLineContent(newCalcul, valueByEmhUid));
+ for (CLimMsImportValue value : imported.getValues()) {
+ String nom = value.getEmh();
+ String typeClimM = value.getTypeClimM();
+ EMH emh = emhByNom.get(nom);
+ Map<String, DclmFactory.CalcBuilder> toMapOfNom = findBuilders(newCalcul, emh);
+ DclmFactory.CalcBuilder builder = toMapOfNom.get(typeClimM);
+ DonCLimMCommonItem create = null;
+ if (builder != null) {
+ create = builder.create(ccm);
+ } else if (versHaut.equals(typeClimM) || versBas.equals(typeClimM)) {
+ final DclmFactory.CalcBuilder<? extends DonCLimMCommonItem> ouvBuilder = transitoire ? new DclmFactory.CalcTransBrancheOrificeManoeuvreCreator() : new DclmFactory.CalcPseudoPermBrancheOrificeManoeuvreCreator();
+ if (toMapOfNom.containsKey(ouvBuilder.geti18n())) {
+ create = ouvBuilder.create(ccm);
+ EnumSensOuv sens = versHaut.equals(typeClimM) ? EnumSensOuv.OUV_VERS_HAUT : EnumSensOuv.OUV_VERS_BAS;
+ if (transitoire) {
+ ((CalcTransBrancheOrificeManoeuvre) create).setSensOuv(sens);
+ } else {
+ ((CalcPseudoPermBrancheOrificeManoeuvre) create).setSensOuv(sens);
+ }
+ }
}
- String cal = currentCLimM.getCalculParent().getNom();
- String nom = currentCLimM.getEmh().getNom();
- CLimMsImportKey key = new CLimMsImportKey(nom, cal);
- CLimMsImportValue value = metier.get(key);
- notComputedData.remove(key);
- if (value != null && StringUtils.isNotBlank(value.getValue())) {
- String typeClimM = value.getTypeClimM();
- EMH emh = currentCLimM.getEmh();
- Map<String, DclmFactory.CalcBuilder> toMapOfNom = findBuilders(currentCLimM);
- DclmFactory.CalcBuilder builder = toMapOfNom.get(typeClimM);
- boolean transitoire = currentCLimM.getCalculParent().isTransitoire();
- DonCLimMCommonItem create = null;
- if (builder != null) {
- create = builder.create(ccm);
- } else if (versHaut.equals(typeClimM) || versBas.equals(typeClimM)) {
- final DclmFactory.CalcBuilder<? extends DonCLimMCommonItem> ouvBuilder = transitoire ? new DclmFactory.CalcTransBrancheOrificeManoeuvreCreator() : new DclmFactory.CalcPseudoPermBrancheOrificeManoeuvreCreator();
- if (toMapOfNom.containsKey(ouvBuilder.geti18n())) {
- create = ouvBuilder.create(ccm);
- EnumSensOuv sens = versHaut.equals(typeClimM) ? EnumSensOuv.OUV_VERS_HAUT : EnumSensOuv.OUV_VERS_BAS;
- if (transitoire) {
- ((CalcTransBrancheOrificeManoeuvre) create).setSensOuv(sens);
- } else {
- ((CalcPseudoPermBrancheOrificeManoeuvre) create).setSensOuv(sens);
- }
+ if (create == null) {
+ log.addWarn(NbBundle.getMessage(CLimMsImporter.class, "importClimMs.typeNotValid", typeClimM, emh.
+ getNom()));
+ } else {
+ create.setEmh(emh);
+ create.setCalculParent(newCalcul);
+ if (transitoire) {
+ CalcTransItem permItem = (CalcTransItem) create;
+ List<Loi> filterDLHY = LoiHelper.filterDLHY(loiConteneur, permItem.getTypeLoi());
+ Loi loi = TransformerHelper.toMapOfId(filterDLHY).get(value.getValue().toUpperCase());
+ if (loi != null) {
+ permItem.setLoi(loi);
+ } else {
+ create = null;
+ log.addWarn(NbBundle.getMessage(CLimMsImporter.class, "importClimMs.lo...
[truncated message content] |
|
From: <de...@us...> - 2015-11-11 22:53:23
|
Revision: 9193
http://sourceforge.net/p/fudaa/svn/9193
Author: deniger
Date: 2015-11-11 22:53:21 +0000 (Wed, 11 Nov 2015)
Log Message:
-----------
CRUE-667
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/Calc.java
trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/edition/EditionUpdateActiveClimMs.java
trunk/soft/fudaa-crue/crue-project/src/test/java/org/fudaa/dodico/crue/edition/EditionUpdateActiveClimMsTest.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingComputeDataTopComponent.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculNodeFactory.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopComponent.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopExportImportPopupBuilder.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImporter.java
trunk/soft/fudaa-crue/ui-views/src/main/java/org/fudaa/fudaa/crue/views/DonCLimMLineBuilder.java
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/Calc.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/Calc.java 2015-11-05 22:02:10 UTC (rev 9192)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/Calc.java 2015-11-11 22:53:21 UTC (rev 9193)
@@ -6,6 +6,8 @@
import java.util.Iterator;
import java.util.List;
+import java.util.logging.Level;
+import java.util.logging.Logger;
import org.apache.commons.lang.StringUtils;
import org.fudaa.dodico.crue.common.BusinessMessages;
import org.fudaa.dodico.crue.common.annotation.PropertyDesc;
@@ -32,14 +34,27 @@
public abstract void remove(EMH emh);
public abstract void addDclm(DonCLimM dclm);
+
public abstract void removeDclm(DonCLimM dclm);
@Override
protected Object clone() throws CloneNotSupportedException {
- Calc res=(Calc) super.clone();
+ Calc res = (Calc) super.clone();
return res;
}
+ public Calc cloneWithNameComment() {
+ try {
+ final Calc newInstance = getClass().newInstance();
+ newInstance.nom = nom;
+ newInstance.commentaire = commentaire;
+ return newInstance;
+ } catch (Exception instantiationException) {
+ Logger.getLogger(Calc.class.getName()).log(Level.INFO, "message {0}", instantiationException);
+ }
+ return null;
+ }
+
/**
* ne clone pas les emh...
*
@@ -132,4 +147,4 @@
public String getNom() {
return nom;
}
-}
\ No newline at end of file
+}
Modified: trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/edition/EditionUpdateActiveClimMs.java
===================================================================
--- trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/edition/EditionUpdateActiveClimMs.java 2015-11-05 22:02:10 UTC (rev 9192)
+++ trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/edition/EditionUpdateActiveClimMs.java 2015-11-11 22:53:21 UTC (rev 9193)
@@ -8,20 +8,30 @@
import gnu.trove.TLongObjectHashMap;
import gnu.trove.TLongObjectIterator;
+import java.util.ArrayList;
import java.util.HashMap;
+import java.util.HashSet;
import java.util.List;
import java.util.Map;
+import java.util.Set;
import org.fudaa.ctulu.CtuluLog;
+import org.fudaa.ctulu.CtuluLogGroup;
import org.fudaa.dodico.crue.common.BusinessMessages;
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetier;
import org.fudaa.dodico.crue.edition.bean.DonCLimMLineContent;
+import org.fudaa.dodico.crue.metier.emh.Calc;
import org.fudaa.dodico.crue.metier.emh.CalcPseudoPermItem;
import org.fudaa.dodico.crue.metier.emh.CalcTransItem;
import org.fudaa.dodico.crue.metier.emh.DonCLimM;
import org.fudaa.dodico.crue.metier.emh.DonCLimMCommonItem;
+import org.fudaa.dodico.crue.metier.emh.DonCLimMScenario;
import org.fudaa.dodico.crue.metier.emh.EMH;
import org.fudaa.dodico.crue.metier.emh.EMHScenario;
+import org.fudaa.dodico.crue.metier.emh.OrdCalc;
+import org.fudaa.dodico.crue.metier.emh.OrdCalcScenario;
import org.fudaa.dodico.crue.metier.factory.DclmFactory;
+import org.fudaa.dodico.crue.metier.factory.OrdCalcFactory;
+import org.fudaa.dodico.crue.validation.ValidationHelper;
/**
* Met à jour les ClimM active d'un calcul.
@@ -36,8 +46,7 @@
this.ccm = ccm;
}
- public CtuluLog updateCLimMs(List<DonCLimMLineContent> newCalcs, EMHScenario parent) {
- CtuluLog log = new CtuluLog(BusinessMessages.RESOURCE_BUNDLE);
+ public CtuluLogGroup updateCLimMs(List<DonCLimMLineContent> newCalcsAndClimMs, EMHScenario parent) {
Map<Class, DclmFactory.CalcBuilder> builderByClass = new HashMap<Class, DclmFactory.CalcBuilder>();
for (DclmFactory.CalcBuilder calcBuilder : DclmFactory.getPseudoPerm()) {
builderByClass.put(calcBuilder.getDclmClass(), calcBuilder);
@@ -45,30 +54,36 @@
for (DclmFactory.CalcBuilder calcBuilder : DclmFactory.getTrans()) {
builderByClass.put(calcBuilder.getDclmClass(), calcBuilder);
}
- for (DonCLimMLineContent donCLimMLineContent : newCalcs) {
+ final List<OrdCalc> currentOrdCalcs = parent.getOrdCalcScenario().getOrdCalc();
+ Map<String, OrdCalc> currentOrdCalcsByCalcName = new HashMap<>();
+ for (OrdCalc currentOrdCalc : currentOrdCalcs) {
+ currentOrdCalcsByCalcName.put(currentOrdCalc.getCalc().getNom(), currentOrdCalc);
+ }
+ CtuluLogGroup group = new CtuluLogGroup(BusinessMessages.RESOURCE_BUNDLE);
+ List<Calc> newCalcs = new ArrayList<>();
+ List<OrdCalc> newOrdCalcs = new ArrayList<>();
+ Set<String> newCalculNames = new HashSet<>();
+ final CtuluLog log = group.createLog();
+ for (DonCLimMLineContent donCLimMLineContent : newCalcsAndClimMs) {
TLongObjectHashMap<DonCLimM> dclmsByEMHId = donCLimMLineContent.getDclmsByEMHId();
+ final Calc calcul = donCLimMLineContent.getCalc().cloneWithNameComment();
+ newCalculNames.add(calcul.getNom());
+ newCalcs.add(calcul);
+ OrdCalc currentOcal = currentOrdCalcsByCalcName.get(calcul.getNom());
+ if (currentOcal == null) {
+ OrdCalc newOcal = OrdCalcFactory.createDefaultOcal(calcul, ccm);
+ newOrdCalcs.add(newOcal);
+ } else {
+ OrdCalc newOcal = currentOcal.deepCloneButNotCalc(calcul);
+ newOrdCalcs.add(newOcal);
+ }
for (TLongObjectIterator<DonCLimM> it = dclmsByEMHId.iterator(); it.hasNext();) {
it.advance();
final DonCLimMCommonItem dclm = (DonCLimMCommonItem) it.value();
if (dclm == null) {
continue;
}
- dclm.setUserActive(true);
final EMH emh = dclm.getEmh();
- if (emh == null) {
- log.addSevereError("Erreur interne sur EMH null" + donCLimMLineContent.getCalc().getNom());
- }
- if (!emh.getUiId().equals(it.key())) {
- log.addSevereError("Erreur interne sur EMH avec " + donCLimMLineContent.getCalc().getNom() + "/" + it.value().getEmhId());
- }
- DonCLimM activeClim = getActiveClim(emh, dclm.getCalculParent().getNom());
- if (activeClim == null) {
- log.addSevereError("Erreur interne. dclim non active " + donCLimMLineContent.getCalc().getNom() + "/" + it.value().getEmhId());
- }
- if (!dclm.getCalculParent().getId().equals(donCLimMLineContent.getCalc().getId())) {
- log.addSevereError("Erreur interne sur Calc parent "
- + donCLimMLineContent.getCalc().getNom() + "/" + it.value().getEmhId());
- }
DclmFactory.CalcBuilder builder = builderByClass.get(dclm.getClass());
if (!builder.isAccepted(emh)) {
log.addSevereError("dclim.dclmNotAccepted", dclm.getCalculParent().getNom(), emh.getNom(), builder.getNom());
@@ -81,36 +96,41 @@
log.addSevereError("dclim.loiNotDefined", dclm.getCalculParent().getNom(), emh.getNom());
}
}
+ dclm.setCalculParent(calcul);
+ dclm.setUserActive(true);
+ calcul.addDclm(dclm);
}
}
- if (log.containsErrorOrSevereError()) {
- return log;
- }
- for (DonCLimMLineContent donCLimMLineContent : newCalcs) {
- TLongObjectHashMap<DonCLimM> dclmsByEMHId = donCLimMLineContent.getDclmsByEMHId();
- for (TLongObjectIterator<DonCLimM> it = dclmsByEMHId.iterator(); it.hasNext();) {
- it.advance();
- final DonCLimMCommonItem newDclm = (DonCLimMCommonItem) it.value();
- if (newDclm == null) {
- continue;
- }
- final EMH emh = newDclm.getEmh();
- //on enleve
- DonCLimM oldClim = getActiveClim(emh, newDclm.getNomCalculParent());
- if (oldClim == newDclm) {
- continue;
- }
- //l'ordre est important:
- newDclm.getCalculParent().removeDclm(oldClim);
- emh.removeInfosEMH(oldClim);
- //on ajoute
- newDclm.getCalculParent().addDclm(newDclm);
- newDclm.setEmh(emh);
- emh.addInfosEMH(newDclm);
+ final List<Calc> currentCalculs = parent.getDonCLimMScenario().getCalc();
+ for (Calc currentCalcul : currentCalculs) {
+ if (!newCalculNames.contains(currentCalcul.getNom())) {
+ newCalcs.add(currentCalcul.deepClone());
}
+
}
+ OrdCalcScenario ocalTemp = new OrdCalcScenario();
+ DonCLimMScenario dclmTemp = new DonCLimMScenario();
+ for (OrdCalc ordCalc : newOrdCalcs) {
+ ocalTemp.addOrdCalc(ordCalc);
+ }
+ for (Calc calc : newCalcs) {
+ dclmTemp.addCalc(calc);
+ }
+
+ group.addLog(ValidationHelper.validateDonCLimMScenarioAndClim(dclmTemp, ccm));
+ group.addLog(ValidationHelper.validateOrdCalcScenario(ocalTemp, ccm));
+ if (group.containsFatalError()) {
+ return group;
+ }
- return log;
+ EditionUpdateCalc updater = new EditionUpdateCalc();
+ updater.updateCalcs(newCalcs, newOrdCalcs, parent);
+//// modellingScenarioModificationService.setScenarioModified(new ScenarioModificationEvent(EnumModification.OCAL));
+// setModified(false);
+// if (Boolean.TRUE.equals(getClientProperty("TEST"))) {
+// scenarioReloaded();
+// }
+ return group;
}
protected DonCLimM getActiveClim(EMH emh, String calculNom) {
Modified: trunk/soft/fudaa-crue/crue-project/src/test/java/org/fudaa/dodico/crue/edition/EditionUpdateActiveClimMsTest.java
===================================================================
--- trunk/soft/fudaa-crue/crue-project/src/test/java/org/fudaa/dodico/crue/edition/EditionUpdateActiveClimMsTest.java 2015-11-05 22:02:10 UTC (rev 9192)
+++ trunk/soft/fudaa-crue/crue-project/src/test/java/org/fudaa/dodico/crue/edition/EditionUpdateActiveClimMsTest.java 2015-11-11 22:53:21 UTC (rev 9193)
@@ -8,6 +8,7 @@
import java.util.ArrayList;
import java.util.List;
import org.fudaa.ctulu.CtuluLog;
+import org.fudaa.ctulu.CtuluLogGroup;
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetier;
import org.fudaa.dodico.crue.config.coeur.TestCoeurConfig;
import org.fudaa.dodico.crue.edition.bean.DonCLimMLineContent;
@@ -58,9 +59,10 @@
newDclm.setEmh(nd);
newDclm.setCalculParent(ocal.getCalc());
List<DonCLimMLineContent> newCalcs = createEntry(nd, newDclm, ocal);
- CtuluLog updateCLimMs = update.updateCLimMs(newCalcs, emhScenario);
- assertFalse(updateCLimMs.containsErrorOrSevereError());
+ CtuluLogGroup updateCLimMs = update.updateCLimMs(newCalcs, emhScenario);
+ assertFalse(updateCLimMs.containsError() || updateCLimMs.containsFatalError());
List<InfosEMH> infosEMH = nd.getInfosEMH();
+ ocal = emhScenario.getOrdCalcScenario().getOrdCalc().get(0);
List<DonCLimM> listeDCLMUserActive = ocal.getCalc().getlisteDCLMUserActive();
assertTrue(infosEMH.contains(newDclm));
assertTrue(newDclm.getEmh() != null);
@@ -75,13 +77,13 @@
newDclmFalse.setCalculParent(ocal.getCalc());
newCalcs = createEntry(nd, newDclmFalse, ocal);
updateCLimMs = update.updateCLimMs(newCalcs, emhScenario);
- assertTrue(updateCLimMs.containsErrorOrSevereError());
- assertEquals(1, updateCLimMs.getRecords().size());
+ assertTrue(updateCLimMs.containsError() || updateCLimMs.containsFatalError());
+ assertEquals(1, updateCLimMs.getLogs().get(0).getRecords().size());
}
public List<DonCLimMLineContent> createEntry(final EMH nd, final DonCLimM newDclm, OrdCalc ocal) {
- List<DonCLimMLineContent> newCalcs = new ArrayList<DonCLimMLineContent>();
- TLongObjectHashMap<DonCLimM> newValues = new TLongObjectHashMap<DonCLimM>();
+ List<DonCLimMLineContent> newCalcs = new ArrayList<>();
+ TLongObjectHashMap<DonCLimM> newValues = new TLongObjectHashMap<>();
newValues.put(nd.getUiId(), newDclm);
DonCLimMLineContent updated = new DonCLimMLineContent(ocal.getCalc(), newValues);
newCalcs.add(updated);
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingComputeDataTopComponent.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingComputeDataTopComponent.java 2015-11-05 22:02:10 UTC (rev 9192)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingComputeDataTopComponent.java 2015-11-11 22:53:21 UTC (rev 9193)
@@ -126,8 +126,8 @@
@Override
public void valideModificationHandler() {
Node[] nodes = getExplorerManager().getRootContext().getChildren().getNodes();
- List<Calc> newCalcs = new ArrayList<Calc>();
- List<OrdCalc> newOrdCalcs = new ArrayList<OrdCalc>();
+ List<Calc> newCalcs = new ArrayList<>();
+ List<OrdCalc> newOrdCalcs = new ArrayList<>();
for (Node node : nodes) {
CalculNode calculNode = (CalculNode) node;
newCalcs.add(calculNode.getCalc());
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculNodeFactory.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculNodeFactory.java 2015-11-05 22:02:10 UTC (rev 9192)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculNodeFactory.java 2015-11-11 22:53:21 UTC (rev 9193)
@@ -70,7 +70,7 @@
if (modellingScenarioService.getScenarioLoaded() == null) {
return Collections.emptyList();
}
- List<CalculNode> nodes = new ArrayList<CalculNode>();
+ List<CalculNode> nodes = new ArrayList<>();
OrdCalcCloner cloner = new OrdCalcCloner();
Result cloneOrdCalcAndCalc = cloner.cloneAndSort(modellingScenarioService.getScenarioLoaded());
final Map<Calc, OrdCalc> ordCalcByCalc = CalcHelper.getOrdCalcByCalc(cloneOrdCalcAndCalc.ordCalcs);
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopComponent.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopComponent.java 2015-11-05 22:02:10 UTC (rev 9192)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopComponent.java 2015-11-11 22:53:21 UTC (rev 9193)
@@ -7,6 +7,7 @@
import javax.swing.event.TableModelEvent;
import javax.swing.event.TableModelListener;
import org.fudaa.ctulu.CtuluLog;
+import org.fudaa.ctulu.CtuluLogGroup;
import org.fudaa.ctulu.gui.CtuluLibSwing;
import org.fudaa.dodico.crue.common.Pair;
import org.fudaa.dodico.crue.edition.EditionUpdateActiveClimMs;
@@ -92,6 +93,7 @@
}
});
add(newCenter);
+ newCenter.setName(CENTER_NAME);
revalidate();
repaint();
newCenter.revalidate();
@@ -142,13 +144,13 @@
}
}
List<DonCLimMLineContent> dclims = tableModel.getDclims();
- CtuluLog res = new EditionUpdateActiveClimMs(getCcm()).updateCLimMs(dclims, getScenario());
- if (!res.containsErrorOrSevereError()) {
+ CtuluLogGroup res = new EditionUpdateActiveClimMs(getCcm()).updateCLimMs(dclims, getScenario());
+ if (!res.containsFatalError()) {
modellingScenarioModificationService.setScenarioModified(new ScenarioModificationEvent(EnumModification.OCAL));
setModified(false);
}
- if (res.isNotEmpty()) {
+ if (res.containsSomething()) {
LogsDisplayer.displayError(res, getName());
}
}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopExportImportPopupBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopExportImportPopupBuilder.java 2015-11-05 22:02:10 UTC (rev 9192)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopExportImportPopupBuilder.java 2015-11-11 22:53:21 UTC (rev 9193)
@@ -76,6 +76,7 @@
getMessage(ModellingListCLimMsTopExportImportPopupBuilder.class, "button.import.name"));
if (result != null) {
tc.rebuildCenterFor(result);
+ tc.setModified(true);
}
}
}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImporter.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImporter.java 2015-11-05 22:02:10 UTC (rev 9192)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImporter.java 2015-11-11 22:53:21 UTC (rev 9193)
@@ -83,7 +83,6 @@
if (imported.getValues().isEmpty()) {
continue;
}
-// DonCLimM currentCLimM = (DonCLimM) model.getValueAt(row, col);
String calculName = imported.getCalculId();
boolean transitoire = imported.isTransitoire();
Calc newCalcul = transitoire ? new CalcTrans() : new CalcPseudoPerm();
@@ -138,6 +137,9 @@
}
}
+ if (create != null) {
+ valueByEmhUid.put(emh.getUiId(), create);
+ }
}
}
if (log.isNotEmpty()) {
Modified: trunk/soft/fudaa-crue/ui-views/src/main/java/org/fudaa/fudaa/crue/views/DonCLimMLineBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/ui-views/src/main/java/org/fudaa/fudaa/crue/views/DonCLimMLineBuilder.java 2015-11-05 22:02:10 UTC (rev 9192)
+++ trunk/soft/fudaa-crue/ui-views/src/main/java/org/fudaa/fudaa/crue/views/DonCLimMLineBuilder.java 2015-11-11 22:53:21 UTC (rev 9193)
@@ -39,11 +39,11 @@
DonClimMTableModel build(EMHScenario scenario, boolean clone) {
List<OrdCalc> ordCalcs = scenario.getOrdCalcScenario().getOrdCalc();
- List<DonCLimMLineContent> lines = new ArrayList<DonCLimMLineContent>();
- Set<Long> emhs = new HashSet<Long>();
+ List<DonCLimMLineContent> lines = new ArrayList<>();
+ Set<Long> emhs = new HashSet<>();
for (OrdCalc ordCalc : ordCalcs) {
List<DonCLimM> listeDCLMUserActive = ordCalc.getCalc().getlisteDCLMUserActive();
- TLongObjectHashMap<DonCLimM> dclmsByEMHId = new TLongObjectHashMap<DonCLimM>();
+ TLongObjectHashMap<DonCLimM> dclmsByEMHId = new TLongObjectHashMap<>();
for (DonCLimM donCLimM : listeDCLMUserActive) {
try {
if (!donCLimM.getActuallyActive()) {//EMH non active...
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2015-11-17 22:27:03
|
Revision: 9196
http://sourceforge.net/p/fudaa/svn/9196
Author: deniger
Date: 2015-11-17 22:27:01 +0000 (Tue, 17 Nov 2015)
Log Message:
-----------
CRUE-667
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-common/pom.xml
trunk/soft/fudaa-crue/ui-emh/pom.xml
trunk/soft/fudaa-crue/ui-loader/pom.xml
trunk/soft/fudaa-crue/ui-loi/pom.xml
trunk/soft/fudaa-crue/ui-modelling/pom.xml
trunk/soft/fudaa-crue/ui-options/pom.xml
trunk/soft/fudaa-crue/ui-otfa/pom.xml
trunk/soft/fudaa-crue/ui-planimetry/pom.xml
trunk/soft/fudaa-crue/ui-post/pom.xml
trunk/soft/fudaa-crue/ui-report/pom.xml
trunk/soft/fudaa-crue/ui-study/pom.xml
trunk/soft/fudaa-crue/ui-sysdoc/pom.xml
Modified: trunk/soft/fudaa-crue/ui-common/pom.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-common/pom.xml 2015-11-17 22:26:17 UTC (rev 9195)
+++ trunk/soft/fudaa-crue/ui-common/pom.xml 2015-11-17 22:27:01 UTC (rev 9196)
@@ -98,6 +98,21 @@
</dependency>
<dependency>
<groupId>org.netbeans.api</groupId>
+ <artifactId>org-openide-util-ui</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
+ <artifactId>org-openide-filesystems-nb</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
+ <artifactId>org-netbeans-api-progress-nb</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
<artifactId>org-openide-util</artifactId>
<version>${netbeans.version}</version>
</dependency>
Modified: trunk/soft/fudaa-crue/ui-emh/pom.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-emh/pom.xml 2015-11-17 22:26:17 UTC (rev 9195)
+++ trunk/soft/fudaa-crue/ui-emh/pom.xml 2015-11-17 22:27:01 UTC (rev 9196)
@@ -96,9 +96,15 @@
</dependency>
<dependency>
<groupId>org.netbeans.api</groupId>
+ <artifactId>org-openide-util-ui</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
<artifactId>org-openide-nodes</artifactId>
<version>${netbeans.version}</version>
</dependency>
+
<dependency>
<groupId>org.netbeans.api</groupId>
<artifactId>org-openide-explorer</artifactId>
Modified: trunk/soft/fudaa-crue/ui-loader/pom.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-loader/pom.xml 2015-11-17 22:26:17 UTC (rev 9195)
+++ trunk/soft/fudaa-crue/ui-loader/pom.xml 2015-11-17 22:27:01 UTC (rev 9196)
@@ -39,6 +39,11 @@
</dependency>
<dependency>
<groupId>org.netbeans.api</groupId>
+ <artifactId>org-openide-filesystems-nb</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
<artifactId>org-openide-util-lookup</artifactId>
<version>${netbeans.version}</version>
</dependency>
Modified: trunk/soft/fudaa-crue/ui-loi/pom.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-loi/pom.xml 2015-11-17 22:26:17 UTC (rev 9195)
+++ trunk/soft/fudaa-crue/ui-loi/pom.xml 2015-11-17 22:27:01 UTC (rev 9196)
@@ -118,6 +118,11 @@
</dependency>
<dependency>
<groupId>org.netbeans.api</groupId>
+ <artifactId>org-openide-util-ui</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
<artifactId>org-openide-util-lookup</artifactId>
<version>${netbeans.version}</version>
</dependency>
Modified: trunk/soft/fudaa-crue/ui-modelling/pom.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/pom.xml 2015-11-17 22:26:17 UTC (rev 9195)
+++ trunk/soft/fudaa-crue/ui-modelling/pom.xml 2015-11-17 22:27:01 UTC (rev 9196)
@@ -188,6 +188,11 @@
</dependency>
<dependency>
<groupId>org.netbeans.api</groupId>
+ <artifactId>org-openide-util-ui</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
<artifactId>org-openide-explorer</artifactId>
<version>${netbeans.version}</version>
</dependency>
@@ -227,6 +232,11 @@
<version>${netbeans.version}</version>
</dependency>
<dependency>
+ <groupId>org.netbeans.api</groupId>
+ <artifactId>org-netbeans-api-progress-nb</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
Modified: trunk/soft/fudaa-crue/ui-options/pom.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-options/pom.xml 2015-11-17 22:26:17 UTC (rev 9195)
+++ trunk/soft/fudaa-crue/ui-options/pom.xml 2015-11-17 22:27:01 UTC (rev 9196)
@@ -92,6 +92,11 @@
</dependency>
<dependency>
<groupId>org.netbeans.api</groupId>
+ <artifactId>org-openide-util-ui</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
<artifactId>org-netbeans-api-progress</artifactId>
<version>${netbeans.version}</version>
</dependency>
Modified: trunk/soft/fudaa-crue/ui-otfa/pom.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-otfa/pom.xml 2015-11-17 22:26:17 UTC (rev 9195)
+++ trunk/soft/fudaa-crue/ui-otfa/pom.xml 2015-11-17 22:27:01 UTC (rev 9196)
@@ -95,6 +95,21 @@
</dependency>
<dependency>
<groupId>org.netbeans.api</groupId>
+ <artifactId>org-openide-util-ui</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
+ <artifactId>org-openide-filesystems-nb</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
+ <artifactId>org-netbeans-api-progress-nb</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
<artifactId>org-netbeans-modules-settings</artifactId>
<version>${netbeans.version}</version>
</dependency>
Modified: trunk/soft/fudaa-crue/ui-planimetry/pom.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/pom.xml 2015-11-17 22:26:17 UTC (rev 9195)
+++ trunk/soft/fudaa-crue/ui-planimetry/pom.xml 2015-11-17 22:27:01 UTC (rev 9196)
@@ -189,6 +189,16 @@
</dependency>
<dependency>
<groupId>org.netbeans.api</groupId>
+ <artifactId>org-openide-util-ui</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
+ <artifactId>org-openide-filesystems-nb</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
<artifactId>org-openide-dialogs</artifactId>
<version>${netbeans.version}</version>
</dependency>
Modified: trunk/soft/fudaa-crue/ui-post/pom.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-post/pom.xml 2015-11-17 22:26:17 UTC (rev 9195)
+++ trunk/soft/fudaa-crue/ui-post/pom.xml 2015-11-17 22:27:01 UTC (rev 9196)
@@ -85,6 +85,16 @@
</dependency>
<dependency>
<groupId>org.netbeans.api</groupId>
+ <artifactId>org-openide-util-ui</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
+ <artifactId>org-netbeans-api-progress-nb</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
<artifactId>org-openide-util-lookup</artifactId>
<version>${netbeans.version}</version>
</dependency>
Modified: trunk/soft/fudaa-crue/ui-report/pom.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-report/pom.xml 2015-11-17 22:26:17 UTC (rev 9195)
+++ trunk/soft/fudaa-crue/ui-report/pom.xml 2015-11-17 22:27:01 UTC (rev 9196)
@@ -168,6 +168,16 @@
</dependency>
<dependency>
<groupId>org.netbeans.api</groupId>
+ <artifactId>org-netbeans-api-progress-nb</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
+ <artifactId>org-openide-util-ui</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
<artifactId>org-openide-util-lookup</artifactId>
<version>${netbeans.version}</version>
</dependency>
Modified: trunk/soft/fudaa-crue/ui-study/pom.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-study/pom.xml 2015-11-17 22:26:17 UTC (rev 9195)
+++ trunk/soft/fudaa-crue/ui-study/pom.xml 2015-11-17 22:27:01 UTC (rev 9196)
@@ -73,6 +73,11 @@
</dependency>
<dependency>
<groupId>org.netbeans.api</groupId>
+ <artifactId>org-openide-util-ui</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
<artifactId>org-netbeans-api-progress</artifactId>
<version>${netbeans.version}</version>
</dependency>
Modified: trunk/soft/fudaa-crue/ui-sysdoc/pom.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-sysdoc/pom.xml 2015-11-17 22:26:17 UTC (rev 9195)
+++ trunk/soft/fudaa-crue/ui-sysdoc/pom.xml 2015-11-17 22:27:01 UTC (rev 9196)
@@ -92,11 +92,21 @@
</dependency>
<dependency>
<groupId>org.netbeans.api</groupId>
+ <artifactId>org-openide-util-ui</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
<artifactId>org-netbeans-api-progress</artifactId>
<version>${netbeans.version}</version>
</dependency>
<dependency>
<groupId>org.netbeans.api</groupId>
+ <artifactId>org-netbeans-api-progress-nb</artifactId>
+ <version>${netbeans.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.netbeans.api</groupId>
<artifactId>org-openide-util-lookup</artifactId>
<version>${netbeans.version}</version>
</dependency>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2015-11-24 23:15:43
|
Revision: 9198
http://sourceforge.net/p/fudaa/svn/9198
Author: deniger
Date: 2015-11-24 23:15:41 +0000 (Tue, 24 Nov 2015)
Log Message:
-----------
CRUE-667
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/LoiConstanteCourbeModel.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalCourbesUiResController.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilderCourbe.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilderLimit.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalGrapheBuilder.java
trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/longitudinal/Bundle.properties
Modified: trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/LoiConstanteCourbeModel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/LoiConstanteCourbeModel.java 2015-11-24 22:31:51 UTC (rev 9197)
+++ trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/LoiConstanteCourbeModel.java 2015-11-24 23:15:41 UTC (rev 9198)
@@ -33,7 +33,8 @@
return res;
}
- public static LoiConstanteCourbeModel create(Object key, double x1, double x2, double y1, double y2, ItemContentAbstract varX, ItemContentAbstract varY) {
+ public static LoiConstanteCourbeModel create(Object key, double x1, double x2, double y1, double y2, ItemContentAbstract varX,
+ ItemContentAbstract varY) {
LoiConstanteCourbeModel res = new LoiConstanteCourbeModel(new double[]{x1, x2}, new double[]{y1, y2}, varX, varY);
res.setKey(key);
return res;
@@ -45,7 +46,8 @@
return res;
}
- public static LoiConstanteCourbeModel create(Object key, ExternContentColumn x, ExternContentColumn y, ExternContent content, ItemContentAbstract varX, ItemContentAbstract varY) {
+ public static LoiConstanteCourbeModel create(Object key, ExternContentColumn x, ExternContentColumn y, ExternContent content,
+ ItemContentAbstract varX, ItemContentAbstract varY) {
LoiConstanteCourbeModel res = new LoiConstanteCourbeModel(x.toNativeArray(), y.toNativeArray(), varX, varY);
res.setLabels(content.getLabelsMap());
res.setKey(key);
@@ -60,6 +62,7 @@
private Object key;
private CtuluListSelection drawnSegment;
private TIntObjectHashMap<String> labels;
+ private Map<String, TIntObjectHashMap<String>> subLabels;
private final ItemContentAbstract varX;
private final ItemContentAbstract varY;
private String title;
@@ -110,6 +113,28 @@
this.labels = labels;
}
+ public void setSubLabels(Map<String, TIntObjectHashMap<String>> subLabels) {
+ this.subLabels = subLabels;
+ }
+
+ private static final TIntObjectHashMap<String> EMPTY_LABEL = new TIntObjectHashMap();
+
+ /**
+ *
+ * @param key
+ * @return les sous labels. hashmap vide si non trouvé ( non null).
+ */
+ public TIntObjectHashMap<String> getSubLabels(String key) {
+ TIntObjectHashMap<String> res = null;
+ if (subLabels != null) {
+ res = subLabels.get(key);
+ }
+ if (res == null) {
+ res = EMPTY_LABEL;
+ }
+ return res;
+ }
+
@Override
public Object getKey() {
return key;
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalCourbesUiResController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalCourbesUiResController.java 2015-11-24 22:31:51 UTC (rev 9197)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalCourbesUiResController.java 2015-11-24 23:15:41 UTC (rev 9198)
@@ -6,9 +6,11 @@
import javax.swing.table.AbstractTableModel;
import org.apache.commons.lang.StringUtils;
import org.fudaa.ctulu.gui.CtuluCellTextRenderer;
+import org.fudaa.dodico.crue.metier.factory.CruePrefix;
import org.fudaa.ebli.courbe.EGCourbe;
import org.fudaa.ebli.courbe.EGTableAction;
import org.fudaa.ebli.courbe.EGTableGraphePanel;
+import org.fudaa.fudaa.crue.loi.common.LoiConstanteCourbeModel;
import org.fudaa.fudaa.crue.loi.res.CourbesUiResController;
import org.openide.util.NbBundle;
@@ -17,7 +19,7 @@
* @author Frederic Deniger
*/
public class ReportLongitudinalCourbesUiResController extends CourbesUiResController {
-
+
public ReportLongitudinalCourbesUiResController() {
EGTableAction tableAction = (EGTableAction) getActions("TABLE").get(0);
tableAction.setAddOptions(false);
@@ -27,62 +29,71 @@
tableAction.setShowLabel(true);
setUseVariableForAxeH(true);
}
-
+
@Override
protected AbstractTableModel createTableModel() {
return new ReportLongitudinalTableModel(getTableGraphePanel());
}
-
+
@Override
protected void configureTablePanel() {
super.configureTablePanel();
tableGraphePanel.getTable().getColumnModel().getColumn(0).setCellRenderer(new CtuluCellTextRenderer());
}
-
+
protected static class ReportLongitudinalTableModel extends EGTableGraphePanel.SpecTableModel {
-
- public static final int COLUMN_PROFIL = 0;
-
+
+ public static final int COLUMN_BRANCHE = 0;
+ public static final int COLUMN_SECTION = 1;
+
public ReportLongitudinalTableModel(EGTableGraphePanel graphePanel) {
super(graphePanel);
- xColIndex = 1;
- yColIndex = 2;
+ xColIndex = 2;
+ yColIndex = 3;
}
-
+
@Override
public int getColumnCount() {
- return 3;
+ return 4;
}
-
+
@Override
public Object getValueAt(int _rowIndex, int _columnIndex) {
- if (_columnIndex == COLUMN_PROFIL) {
+ if (_columnIndex == COLUMN_SECTION || _columnIndex == COLUMN_BRANCHE) {
final EGCourbe courbe = getCourbe();
String res = null;
if (courbe != null) {
- res = courbe.getModel().getPointLabel(_rowIndex);
+ LoiConstanteCourbeModel model = (LoiConstanteCourbeModel) courbe.getModel();
+ String key = CruePrefix.P_BRANCHE;
+ if (_columnIndex == COLUMN_SECTION) {
+ key = CruePrefix.P_SECTION;
+ }
+ res = model.getSubLabels(key).get(_rowIndex);
}
return StringUtils.defaultString(res);
}
return super.getValueAt(_rowIndex, _columnIndex);
}
-
+
@Override
public String getColumnName(int _column) {
- if (_column == COLUMN_PROFIL) {
- return NbBundle.getMessage(ReportLongitudinalCourbesUiResController.class, "BrancheSectionColumn.Name");
+ if (_column == COLUMN_SECTION) {
+ return NbBundle.getMessage(ReportLongitudinalCourbesUiResController.class, "SectionColumn.Name");
}
+ if (_column == COLUMN_BRANCHE) {
+ return NbBundle.getMessage(ReportLongitudinalCourbesUiResController.class, "BrancheColumn.Name");
+ }
return super.getColumnName(_column);
}
-
+
@Override
public Class getColumnClass(int _columnIndex) {
- if (_columnIndex <= COLUMN_PROFIL) {
+ if (_columnIndex <= COLUMN_SECTION) {
return String.class;
}
return Double.class;
}
-
+
@Override
public void setValueAt(Object _value, int _rowIndex, int _columnIndex) {
}
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilderCourbe.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilderCourbe.java 2015-11-24 22:31:51 UTC (rev 9197)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilderCourbe.java 2015-11-24 23:15:41 UTC (rev 9198)
@@ -9,7 +9,9 @@
import org.fudaa.dodico.crue.projet.report.longitudinal.ReportLongitudinalConfig;
import gnu.trove.TDoubleArrayList;
import gnu.trove.TIntObjectHashMap;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import org.fudaa.ctulu.CtuluListSelection;
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetier;
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetierConstants;
@@ -17,6 +19,7 @@
import org.fudaa.dodico.crue.config.ccm.PropertyEpsilon;
import org.fudaa.dodico.crue.metier.emh.CatEMHSection;
import org.fudaa.dodico.crue.metier.emh.ResultatTimeKey;
+import org.fudaa.dodico.crue.metier.factory.CruePrefix;
import org.fudaa.ebli.courbe.EGAxeVertical;
import org.fudaa.ebli.courbe.EGCourbeSimple;
import org.fudaa.fudaa.crue.loi.common.LoiConstanteCourbeModel;
@@ -32,13 +35,13 @@
* @author Frederic Deniger
*/
public class ReportLongitudinalGrapheBuilderCourbe {
-
+
CrueConfigMetier ccm;
ReportLongitudinalGrapheBuilder builder;
EGAxeVertical axeZ;
EGAxeVertical rightAxis;
ReportLongitudinalConfig content;
-
+
public ReportLongitudinalGrapheBuilderCourbe(CrueConfigMetier ccm, ReportLongitudinalGrapheBuilder result, ReportLongitudinalConfig content) {
this.ccm = ccm;
this.builder = result;
@@ -46,19 +49,24 @@
axeZ = builder.getOrCreateAxeVerticalZ(content);
rightAxis = builder.getRightAxis(content);
}
-
+
public EGAxeVertical getAxeZ() {
return axeZ;
}
-
+
public EGAxeVertical getRightAxis() {
return rightAxis;
}
-
+
EGCourbeSimple createCourbe(ReportRunVariableKey reportRunVariableKey, ResultatTimeKey selectedTime, boolean currentTime) {
TDoubleArrayList xps = new TDoubleArrayList();
TDoubleArrayList values = new TDoubleArrayList();
TIntObjectHashMap labels = new TIntObjectHashMap();
+ Map<String, TIntObjectHashMap<String>> sublabels = new HashMap<String, TIntObjectHashMap<String>>();
+ TIntObjectHashMap<String> labelBranches = new TIntObjectHashMap<String>();
+ TIntObjectHashMap<String> labelSections = new TIntObjectHashMap<String>();
+ sublabels.put(CruePrefix.P_BRANCHE, labelBranches);
+ sublabels.put(CruePrefix.P_SECTION, labelSections);
CtuluListSelection drawnSegment = new CtuluListSelection();
boolean isDz = ReportRunVariableHelper.isNatDzVar(reportRunVariableKey.getVariable(), builder.getReportResultProviderService());
for (ReportLongitudinalBrancheCartouche cartouche : builder.result.getCartouches()) {
@@ -68,7 +76,7 @@
}
List<ReportLongitudinalPositionSection> sectionPositions = positions.getSectionDisplayPositions();
boolean firstAddInBranche = true;
-
+
for (ReportLongitudinalPositionSection sectionPosition : sectionPositions) {
CatEMHSection section = sectionPosition.getName();
Double value = builder.getReportResultProviderService().getValue(selectedTime, reportRunVariableKey, section.getNom());
@@ -85,6 +93,8 @@
drawnSegment.add(xps.size() - 1);//segment dessine
}
labels.put(xps.size(), section.getBranche().getNom() + " / " + section.getNom());//le faire avant l'ajout !
+ labelBranches.put(xps.size(), section.getBranche().getNom());
+ labelSections.put(xps.size(), section.getNom());
xps.add(sectionPosition.getXpDisplay());
values.add(value);
firstAddInBranche = false;
@@ -98,6 +108,7 @@
model.setLabelColumnName(NbBundle.getMessage(ReportLongitudinalCourbesUiResController.class, "BrancheSectionColumn.Name"));
model.setDrawnSegment(drawnSegment);
model.setLabels(labels);
+ model.setSubLabels(sublabels);
boolean isOnZ = ReportRunVariableHelper.isZOrDzNature(reportRunVariableKey.getVariable(), builder.getReportResultProviderService());
final EGAxeVertical axisToUse = isOnZ ? axeZ : rightAxis;
connectVerticalSegment(model, ccm);
@@ -106,7 +117,7 @@
AbstractReportGrapheBuilder.applyPersistConfig(content.getCourbeconfigs().get(model.getKey()), courbe);
return courbe;
}
-
+
public static void connectVerticalSegment(LoiConstanteCourbeModel model, CrueConfigMetier ccm) {
PropertyEpsilon epsilon = ccm.getEpsilon(CrueConfigMetierConstants.PROP_XP);
CtuluListSelection drawnSegment = model.getDrawnSegment();
@@ -119,7 +130,7 @@
drawnSegment.add(i);
}
}
-
+
}
}
}
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilderLimit.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilderLimit.java 2015-11-24 22:31:51 UTC (rev 9197)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilderLimit.java 2015-11-24 23:15:41 UTC (rev 9198)
@@ -9,7 +9,9 @@
import org.fudaa.dodico.crue.projet.report.longitudinal.ReportLongitudinalBrancheCartouche;
import gnu.trove.TDoubleArrayList;
import gnu.trove.TIntObjectHashMap;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import org.fudaa.ctulu.CtuluListSelection;
import org.fudaa.dodico.crue.common.BusinessMessages;
import org.fudaa.dodico.crue.common.io.CrueIOResu;
@@ -22,6 +24,7 @@
import org.fudaa.dodico.crue.metier.emh.DonPrtGeoProfilEtiquette;
import org.fudaa.dodico.crue.metier.emh.DonPrtGeoProfilSection;
import org.fudaa.dodico.crue.metier.emh.EMHSectionProfil;
+import org.fudaa.dodico.crue.metier.factory.CruePrefix;
import org.fudaa.dodico.crue.metier.helper.DonPrtHelper;
import org.fudaa.dodico.crue.metier.helper.EtiquetteIndexed;
import org.fudaa.dodico.crue.metier.helper.LitNommeIndexed;
@@ -61,6 +64,11 @@
TDoubleArrayList xps = new TDoubleArrayList();
TDoubleArrayList values = new TDoubleArrayList();
TIntObjectHashMap labels = new TIntObjectHashMap();
+ Map<String, TIntObjectHashMap<String>> sublabels = new HashMap<>();
+ TIntObjectHashMap<String> labelBranches = new TIntObjectHashMap<>();
+ TIntObjectHashMap<String> labelSections = new TIntObjectHashMap<>();
+ sublabels.put(CruePrefix.P_BRANCHE, labelBranches);
+ sublabels.put(CruePrefix.P_SECTION, labelSections);
CtuluListSelection drawnSegment = new CtuluListSelection();
ItemEnum etiquette = limitHelper.getEtiquette(reportRunVariableKey.getVariable().getVariableName());
LitNommeLimite limite = limitHelper.getLimite(reportRunVariableKey.getVariable().getVariableName());
@@ -77,6 +85,8 @@
boolean ok = computeZ(etiquette, limite, profil, values);
if (ok) {
labels.put(xps.size(), section.getBranche().getNom() + " / " + section.getNom());
+ labelBranches.put(xps.size(), section.getBranche().getNom());
+ labelSections.put(xps.size(), section.getNom());
if (!firstAddInBranche) {//ce n'est pas le premier point de la ligne
drawnSegment.add(xps.size() - 1);//segment dessine
}
@@ -93,6 +103,7 @@
LoiConstanteCourbeModel model = LoiConstanteCourbeModel.create(key, xps, values, varX, varY);
model.setDrawnSegment(drawnSegment);
model.setLabels(labels);
+ model.setSubLabels(sublabels);
model.setLabelColumnName(NbBundle.getMessage(ReportLongitudinalCourbesUiResController.class, "BrancheSectionColumn.Name"));
ReportLongitudinalGrapheBuilderCourbe.connectVerticalSegment(model, ccm);
if (etiquette != null) {
@@ -114,15 +125,13 @@
values.add(foundPt.getPoint().getZ());
}
- } else {
- if (limite != null) {
- CrueIOResu<List<LitNommeIndexed>> asIndexedData = new ValidateAndRebuildProfilSection(ccm, null).getAsIndexedData(profil);
- if (asIndexedData != null && asIndexedData.getMetier() != null) {
- int ptIdx = ReportLongitudinalHelper.finPtIdx(asIndexedData, limite);
- if (ptIdx >= 0) {
- ok = true;
- values.add(profil.getPtProfil().get(ptIdx).getZ());
- }
+ } else if (limite != null) {
+ CrueIOResu<List<LitNommeIndexed>> asIndexedData = new ValidateAndRebuildProfilSection(ccm, null).getAsIndexedData(profil);
+ if (asIndexedData != null && asIndexedData.getMetier() != null) {
+ int ptIdx = ReportLongitudinalHelper.finPtIdx(asIndexedData, limite);
+ if (ptIdx >= 0) {
+ ok = true;
+ values.add(profil.getPtProfil().get(ptIdx).getZ());
}
}
}
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalGrapheBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalGrapheBuilder.java 2015-11-24 22:31:51 UTC (rev 9197)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalGrapheBuilder.java 2015-11-24 23:15:41 UTC (rev 9198)
@@ -17,6 +17,7 @@
import org.fudaa.dodico.crue.config.ccm.ItemVariable;
import org.fudaa.dodico.crue.config.ccm.PropertyNature;
import org.fudaa.dodico.crue.metier.emh.ResultatTimeKey;
+import org.fudaa.dodico.crue.metier.factory.CruePrefix;
import org.fudaa.ebli.courbe.EGAxeHorizontal;
import org.fudaa.ebli.courbe.EGAxeVertical;
import org.fudaa.ebli.courbe.EGCourbeSimple;
@@ -142,6 +143,7 @@
TDoubleArrayList values = new TDoubleArrayList();
TDoubleArrayList times = new TDoubleArrayList();
TIntObjectHashMap<String> labels = new TIntObjectHashMap<String>();
+
for (Pair<ResultatTimeKey, Long> pair : timeByKey) {
Double value = reportResultProviderService.getValue(pair.first, key.getRunVariableKey(), key.getEmhName());
if (value != null) {
Modified: trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/longitudinal/Bundle.properties
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/longitudinal/Bundle.properties 2015-11-24 22:31:51 UTC (rev 9197)
+++ trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/longitudinal/Bundle.properties 2015-11-24 23:15:41 UTC (rev 9198)
@@ -32,5 +32,6 @@
LineSection.DisplayName=Contour
LineBranche.DisplayName=Contour
BannerConfiguration.DialogTitle=Configuration du cartouche
+BrancheSectionColumn.Name=Branche / Section
SectionColumn.Name=Section
-BrancheSectionColumn.Name=Branche / Section
+BrancheColumn.Name=Branche
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2015-11-25 22:57:49
|
Revision: 9203
http://sourceforge.net/p/fudaa/svn/9203
Author: deniger
Date: 2015-11-25 22:57:46 +0000 (Wed, 25 Nov 2015)
Log Message:
-----------
CRUE-667
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/longitudinal/ReportLongitudinalConfig.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilder.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalTimeChooser.java
trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/longitudinal/Bundle.properties
Modified: trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/longitudinal/ReportLongitudinalConfig.java
===================================================================
--- trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/longitudinal/ReportLongitudinalConfig.java 2015-11-25 22:19:43 UTC (rev 9202)
+++ trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/longitudinal/ReportLongitudinalConfig.java 2015-11-25 22:57:46 UTC (rev 9203)
@@ -65,6 +65,9 @@
@XStreamAlias("Vue-Config")
ViewCourbeConfig loiLegendConfig = new ViewCourbeConfig();
+ @XStreamAlias("Temps-courant-affiche")
+ Boolean currentTimeDisplayed = Boolean.TRUE;
+
@Override
public ViewCourbeConfig getLoiLegendConfig() {
return loiLegendConfig;
@@ -74,7 +77,6 @@
return courbeconfigs;
}
-
@Override
protected void cleanUnusedCourbesConfig(Set<ReportKeyContract> usedKeys) {
for (Iterator<ReportRunVariableTimeKey> it = courbeconfigs.keySet().iterator(); it.hasNext();) {
@@ -97,6 +99,15 @@
return modified;
}
+ public Boolean getCurrentTimeDisplayed() {
+ return currentTimeDisplayed == null ? Boolean.TRUE : currentTimeDisplayed;
+ }
+
+ public void setCurrentTimeDisplayed(Boolean currentTimeDisplayed) {
+ this.currentTimeDisplayed = currentTimeDisplayed;
+ }
+
+
public List<ResultatTimeKey> getTimes() {
return times;
}
@@ -139,6 +150,9 @@
if (times == null) {
times = new ArrayList<ResultatTimeKey>();
}
+ if (currentTimeDisplayed == null) {
+ currentTimeDisplayed = Boolean.TRUE;
+ }
if (courbeconfigs == null) {
courbeconfigs = new HashMap<ReportRunVariableTimeKey, EGCourbePersist>();
}
@@ -171,7 +185,8 @@
for (ReportRunVariableKey vKey : profilVariables) {
//pour eviter les limites -> vKey.isReadVariable()
//uniquement Qini pour les RESULTAT_RPTI sur l'axe de droite
- if (vKey.getVariableName().equals(CrueConfigMetierConstants.QINI) || (vKey.isReadOrVariable() && ReportRunVariableHelper.isNotAZNOrDzNature(vKey.getVariable(), service))) {
+ if (vKey.getVariableName().equals(CrueConfigMetierConstants.QINI) || (vKey.isReadOrVariable() && ReportRunVariableHelper.isNotAZNOrDzNature(
+ vKey.getVariable(), service))) {
return vKey.getVariable().getVariableName();
}
}
@@ -182,7 +197,8 @@
for (Iterator<ReportRunVariableKey> it = profilVariables.iterator(); it.hasNext();) {
ReportRunVariableKey vKey = it.next();
//pour eviter les limites -> vKey.isReadVariable()
- if (vKey.getVariableName().equals(CrueConfigMetierConstants.QINI) || (vKey.isReadOrVariable() && ReportRunVariableHelper.isNotAZNOrDzNature(vKey.getVariable(), service))) {
+ if (vKey.getVariableName().equals(CrueConfigMetierConstants.QINI) || (vKey.isReadOrVariable() && ReportRunVariableHelper.isNotAZNOrDzNature(
+ vKey.getVariable(), service))) {
it.remove();
}
}
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilder.java 2015-11-25 22:19:43 UTC (rev 9202)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilder.java 2015-11-25 22:57:46 UTC (rev 9203)
@@ -129,12 +129,15 @@
}
private List<EGCourbeSimple> createCourbesOnCurrentTimeStep(ReportLongitudinalConfig content, ProgressHandle progress) {
+ if (Boolean.FALSE.equals(content.getCurrentTimeDisplayed())) {
+ return Collections.emptyList();
+ }
ReportLongitudinalGrapheBuilderCourbe courbeBuilder = new ReportLongitudinalGrapheBuilderCourbe(reportService.getCcm(), this, content);
if (result == null) {
return Collections.emptyList();
}
List<ReportRunVariableKey> var = content.getProfilVariables();
- List<EGCourbeSimple> courbes = new ArrayList<EGCourbeSimple>();
+ List<EGCourbeSimple> courbes = new ArrayList<>();
ResultatTimeKey selectedTime = reportService.getSelectedTime();
if (selectedTime != null) {
for (ReportRunVariableKey reportRunVariableKey : var) {
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalTimeChooser.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalTimeChooser.java 2015-11-25 22:19:43 UTC (rev 9202)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalTimeChooser.java 2015-11-25 22:57:46 UTC (rev 9203)
@@ -9,7 +9,9 @@
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.util.List;
+import javax.swing.BorderFactory;
import javax.swing.JCheckBox;
+import javax.swing.JComboBox;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import org.fudaa.dodico.crue.common.transformer.ToStringTransformer;
@@ -48,7 +50,7 @@
list.addCheckBoxListSelectedIndex(i);
}
}
- JPanel pn = new JPanel(new BorderLayout(0, 5));
+ JPanel pnCenter = new JPanel(new BorderLayout(0, 5));
final JCheckBox selectAll = new JCheckBox(NbBundle.getMessage(ReportLongitudinalTimeChooser.class, "ChooseTime.SelectAllNone"));
selectAll.addItemListener(new ItemListener() {
@@ -62,13 +64,29 @@
}
}
});
- pn.add(new JScrollPane(list));
- pn.add(selectAll, BorderLayout.NORTH);
+ pnCenter.add(new JScrollPane(list));
+ pnCenter.add(selectAll, BorderLayout.NORTH);
+ pnCenter.setBorder(BorderFactory.createEmptyBorder(10, 3, 0, 3));
+ JPanel pn = new JPanel(new BorderLayout(0, 5));
+ JComboBox currentTimeDisplayed = new JComboBox(new String[]{
+ org.openide.util.NbBundle.getMessage(ReportLongitudinalTimeChooser.class, "ChooseTime.DisplayCurrentTime"),
+ org.openide.util.NbBundle.getMessage(ReportLongitudinalTimeChooser.class, "ChooseTime.NotDisplayCurrentTime")
+
+ });
+ currentTimeDisplayed.setSelectedIndex(0);
+ if (Boolean.FALSE.equals(config.getCurrentTimeDisplayed())) {
+ currentTimeDisplayed.setSelectedIndex(1);
+
+ }
+ pn.add(currentTimeDisplayed, BorderLayout.NORTH);
+ pn.add(pnCenter);
+
String title = org.openide.util.NbBundle.getMessage(ReportLongitudinalTimeChooser.class, "ChooseTime.DialogTitle");
boolean ok = DialogHelper.showQuestionAndSaveDialogConf(title, pn, getClass(), "vueProfilLongitudinal_ConfigurationPasDeTemps",
PerspectiveEnum.REPORT, true);
if (ok) {
config.getTimes().clear();
+ config.setCurrentTimeDisplayed(currentTimeDisplayed.getSelectedIndex() == 0);
final Object[] selectedValues = list.getCheckBoxListSelectedValues();
for (Object object : selectedValues) {
config.getTimes().add((ResultatTimeKey) object);
Modified: trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/longitudinal/Bundle.properties
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/longitudinal/Bundle.properties 2015-11-25 22:19:43 UTC (rev 9202)
+++ trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/longitudinal/Bundle.properties 2015-11-25 22:57:46 UTC (rev 9203)
@@ -35,3 +35,5 @@
BrancheSectionColumn.Name=Branche / Section
SectionColumn.Name=Section
BrancheColumn.Name=Branche
+ChooseTime.DisplayCurrentTime=Afficher au pas de temps courant
+ChooseTime.NotDisplayCurrentTime=Ne pas afficher au pas de temps courant
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-02-19 14:59:02
|
Revision: 9276
http://sourceforge.net/p/fudaa/svn/9276
Author: deniger
Date: 2016-02-19 14:58:59 +0000 (Fri, 19 Feb 2016)
Log Message:
-----------
traductions
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalExportDataBuilder.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/time/ReportTimeReduceRangePanel.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/time/ReportTimeStepSliderPanel.java
trunk/soft/fudaa-crue/ui-views/src/main/java/org/fudaa/fudaa/crue/views/export/DonClimMExportTableModel.java
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalExportDataBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalExportDataBuilder.java 2016-02-15 22:10:43 UTC (rev 9275)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalExportDataBuilder.java 2016-02-19 14:58:59 UTC (rev 9276)
@@ -3,6 +3,7 @@
*/
package org.fudaa.fudaa.crue.report.longitudinal;
+import com.memoire.fu.FuEmptyArrays;
import gnu.trove.TIntObjectHashMap;
import java.awt.color.ColorSpace;
import java.util.ArrayList;
@@ -100,6 +101,11 @@
}
@Override
+ public int[] getSelectedRows() {
+ return FuEmptyArrays.INT0;
+ }
+
+ @Override
public Object getValue(int _row, int _col) {
if (_col == COLUMN_BRANCHE) {
return branches.get(_row);
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/time/ReportTimeReduceRangePanel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/time/ReportTimeReduceRangePanel.java 2016-02-15 22:10:43 UTC (rev 9275)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/time/ReportTimeReduceRangePanel.java 2016-02-19 14:58:59 UTC (rev 9276)
@@ -8,13 +8,10 @@
import com.memoire.bu.BuLib;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.util.List;
import javax.swing.BorderFactory;
-import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JPanel;
@@ -25,10 +22,8 @@
import org.fudaa.fudaa.crue.common.PerspectiveEnum;
import org.fudaa.fudaa.crue.common.helper.ComboBoxHelper;
import org.fudaa.fudaa.crue.common.helper.ToStringTransfomerCellRenderer;
-import org.fudaa.fudaa.crue.common.services.SysdocContrat;
import org.fudaa.fudaa.crue.common.services.SysdocUrlBuilder;
import org.openide.util.HelpCtx;
-import org.openide.util.Lookup;
/**
*
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/time/ReportTimeStepSliderPanel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/time/ReportTimeStepSliderPanel.java 2016-02-15 22:10:43 UTC (rev 9275)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/time/ReportTimeStepSliderPanel.java 2016-02-19 14:58:59 UTC (rev 9276)
@@ -141,10 +141,8 @@
if (videoRecorder != null) {
videoRecorder.end();
}
- } else {
- if (videoRecorder != null) {
- videoRecorder.nextDone();
- }
+ } else if (videoRecorder != null) {
+ videoRecorder.nextDone();
}
}
protected int playDelay = 1000;
@@ -247,6 +245,9 @@
btNext.setEnabled(editable && enable);
btLast.setEnabled(editable && enable);
btPlay.setEnabled(editable && enable);
+ if (editable && !enable) {
+ setIcon(btPlay, "play.png");
+ }
btReplay.setEnabled(editable);
}
Modified: trunk/soft/fudaa-crue/ui-views/src/main/java/org/fudaa/fudaa/crue/views/export/DonClimMExportTableModel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-views/src/main/java/org/fudaa/fudaa/crue/views/export/DonClimMExportTableModel.java 2016-02-15 22:10:43 UTC (rev 9275)
+++ trunk/soft/fudaa-crue/ui-views/src/main/java/org/fudaa/fudaa/crue/views/export/DonClimMExportTableModel.java 2016-02-19 14:58:59 UTC (rev 9276)
@@ -3,6 +3,7 @@
*/
package org.fudaa.fudaa.crue.views.export;
+import com.memoire.fu.FuEmptyArrays;
import java.util.Collections;
import java.util.List;
import jxl.write.Label;
@@ -12,9 +13,7 @@
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetier;
import org.fudaa.dodico.crue.config.ccm.DecimalFormatEpsilonEnum;
import org.fudaa.dodico.crue.config.ccm.ItemVariable;
-import org.fudaa.dodico.crue.metier.emh.CalcPseudoPermBrancheOrificeManoeuvre;
import org.fudaa.dodico.crue.metier.emh.CalcPseudoPermItem;
-import org.fudaa.dodico.crue.metier.emh.CalcTransBrancheOrificeManoeuvre;
import org.fudaa.dodico.crue.metier.emh.CalcTransItem;
import org.fudaa.dodico.crue.metier.emh.DonCLimM;
import org.fudaa.dodico.crue.metier.emh.DonCLimMCommonItem;
@@ -51,6 +50,11 @@
}
@Override
+ public int[] getSelectedRows() {
+ return FuEmptyArrays.INT0;
+ }
+
+ @Override
public List<String> getComments() {
return Collections.emptyList();
}
@@ -125,4 +129,5 @@
String value = getValue(_rowInModel, _colInModel);
return new Label(_colInXls, _rowInXls, value);
}
+
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-02-24 07:49:05
|
Revision: 9285
http://sourceforge.net/p/fudaa/svn/9285
Author: deniger
Date: 2016-02-24 07:49:02 +0000 (Wed, 24 Feb 2016)
Log Message:
-----------
CRUE-651
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-branding/src/main/nbm-branding/modules/org-netbeans-core-windows.jar/org/netbeans/core/windows/Bundle.properties
trunk/soft/fudaa-crue/ui-common/src/main/resources/org/fudaa/fudaa/crue/common/layer.xml
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/perspective/ActiveModelisation.java
trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/layer.xml
trunk/soft/fudaa-crue/ui-options/src/main/resources/org/fudaa/fudaa/crue/options/layer.xml
trunk/soft/fudaa-crue/ui-otfa/src/main/java/org/fudaa/fudaa/crue/otfa/perspective/ActiveOtfa.java
trunk/soft/fudaa-crue/ui-otfa/src/main/resources/org/fudaa/fudaa/crue/otfa/layer.xml
trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/perspective/ActivePost.java
trunk/soft/fudaa-crue/ui-post/src/main/resources/org/fudaa/fudaa/crue/post/layer.xml
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/perspective/ActiveReport.java
trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/export/Bundle.properties
trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/layer.xml
trunk/soft/fudaa-crue/ui-study/src/main/java/org/fudaa/fudaa/crue/study/perspective/ActiveStudy.java
trunk/soft/fudaa-crue/ui-study/src/main/resources/org/fudaa/fudaa/crue/study/layer.xml
trunk/soft/fudaa-crue/ui-sysdoc/src/main/resources/org/fudaa/fudaa/crue/sysdoc/layer.xml
Modified: trunk/soft/fudaa-crue/ui-branding/src/main/nbm-branding/modules/org-netbeans-core-windows.jar/org/netbeans/core/windows/Bundle.properties
===================================================================
--- trunk/soft/fudaa-crue/ui-branding/src/main/nbm-branding/modules/org-netbeans-core-windows.jar/org/netbeans/core/windows/Bundle.properties 2016-02-23 14:51:25 UTC (rev 9284)
+++ trunk/soft/fudaa-crue/ui-branding/src/main/nbm-branding/modules/org-netbeans-core-windows.jar/org/netbeans/core/windows/Bundle.properties 2016-02-24 07:49:02 UTC (rev 9285)
@@ -1 +1,2 @@
WinSys.Show.Hide.MainWindow.While.Switching.Role=false
+Editor.TopComponent.Closing.Enabled=false
Modified: trunk/soft/fudaa-crue/ui-common/src/main/resources/org/fudaa/fudaa/crue/common/layer.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-common/src/main/resources/org/fudaa/fudaa/crue/common/layer.xml 2016-02-23 14:51:25 UTC (rev 9284)
+++ trunk/soft/fudaa-crue/ui-common/src/main/resources/org/fudaa/fudaa/crue/common/layer.xml 2016-02-24 07:49:02 UTC (rev 9285)
@@ -7,6 +7,8 @@
<file name="Separator4.instance">
<attr name="instanceClass" stringvalue="javax.swing.JSeparator"/>
</file>
+ <file name="org-netbeans-core-windows-actions-CloseAllButThisAction.instance_hidden"/>
+ <file name="org-netbeans-core-windows-actions-CloseAllDocumentsAction.instance_hidden"/>
</folder>
</folder>
<folder name="Menu">
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/perspective/ActiveModelisation.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/perspective/ActiveModelisation.java 2016-02-23 14:51:25 UTC (rev 9284)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/perspective/ActiveModelisation.java 2016-02-24 07:49:02 UTC (rev 9285)
@@ -1,7 +1,3 @@
-/*
- * To change this template, choose Tools | Templates
- * and open the template in the editor.
- */
package org.fudaa.fudaa.crue.modelling.perspective;
import java.util.Collection;
@@ -16,7 +12,10 @@
import org.openide.awt.ActionRegistration;
import org.openide.util.NbBundle;
import org.openide.util.lookup.Lookups;
-
+/**
+ * Permet d'activer une perspective. Action utilisée dans la toobar pour changer de perspective. Pour la gestion des ordres des menus, voir le fichier
+ * layer.xml
+ */
@ActionID(category = "File", id = "org.fudaa.fudaa.crue.modelling.perspective.ActiveModelisation")
@ActionRegistration(displayName = "#CTL_ActiveModelisation")
@ActionReference(path = "Menu/Window", position = 3)
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/layer.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/layer.xml 2016-02-23 14:51:25 UTC (rev 9284)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/layer.xml 2016-02-24 07:49:02 UTC (rev 9285)
@@ -4,6 +4,10 @@
<folder name="Actions">
+ <folder name="Window">
+ <file name="org-netbeans-core-windows-actions-CloseAllButThisAction.instance_hidden"/>
+ <file name="org-netbeans-core-windows-actions-CloseAllDocumentsAction.instance_hidden"/>
+ </folder>
</folder>
<folder name="Menu">
<folder name="Window">
Modified: trunk/soft/fudaa-crue/ui-options/src/main/resources/org/fudaa/fudaa/crue/options/layer.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-options/src/main/resources/org/fudaa/fudaa/crue/options/layer.xml 2016-02-23 14:51:25 UTC (rev 9284)
+++ trunk/soft/fudaa-crue/ui-options/src/main/resources/org/fudaa/fudaa/crue/options/layer.xml 2016-02-24 07:49:02 UTC (rev 9285)
@@ -1,7 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE filesystem PUBLIC "-//NetBeans//DTD Filesystem 1.2//EN" "http://www.netbeans.org/dtds/filesystem-1_2.dtd">
<filesystem>
- <folder name="DefaultConfig">
+ <folder name="Actions">
+ <folder name="Window">
+ <file name="org-netbeans-core-windows-actions-CloseAllButThisAction.instance_hidden"/>
+ <file name="org-netbeans-core-windows-actions-CloseAllDocumentsAction.instance_hidden"/>
+ </folder>
+ </folder>
+ <folder name="DefaultConfig">
<file name="FudaaCrue_Site.xml" url="/FudaaCrue_Site.xml"/>
<file name="FudaaCrue_Etude.xml" url="/FudaaCrue_Etude.xml"/>
<file name="FudaaCrue_Aide.xml" url="/FudaaCrue_Aide.xml"/>
Modified: trunk/soft/fudaa-crue/ui-otfa/src/main/java/org/fudaa/fudaa/crue/otfa/perspective/ActiveOtfa.java
===================================================================
--- trunk/soft/fudaa-crue/ui-otfa/src/main/java/org/fudaa/fudaa/crue/otfa/perspective/ActiveOtfa.java 2016-02-23 14:51:25 UTC (rev 9284)
+++ trunk/soft/fudaa-crue/ui-otfa/src/main/java/org/fudaa/fudaa/crue/otfa/perspective/ActiveOtfa.java 2016-02-24 07:49:02 UTC (rev 9285)
@@ -6,6 +6,10 @@
import org.openide.awt.ActionReference;
import org.openide.awt.ActionRegistration;
+/**
+ * Permet d'activer une perspective. Action utilisée dans la toobar pour changer de perspective. Pour la gestion des ordres des menus, voir le fichier
+ * layer.xml
+ */
@ActionID(category = "File", id = "org.fudaa.fudaa.crue.otfa.perspective.ActiveOtfa")
@ActionRegistration(displayName = "#CTL_ActiveOtfa")
@ActionReference(path = "Menu/Window", position = 6)
Modified: trunk/soft/fudaa-crue/ui-otfa/src/main/resources/org/fudaa/fudaa/crue/otfa/layer.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-otfa/src/main/resources/org/fudaa/fudaa/crue/otfa/layer.xml 2016-02-23 14:51:25 UTC (rev 9284)
+++ trunk/soft/fudaa-crue/ui-otfa/src/main/resources/org/fudaa/fudaa/crue/otfa/layer.xml 2016-02-24 07:49:02 UTC (rev 9285)
@@ -31,7 +31,7 @@
<folder name="Window">
<folder name="OTFA">
<attr name="displayName" bundlevalue="org.fudaa.fudaa.crue.otfa.Bundle#Menu/OTFA"/>
- <attr name="position" intvalue="15"/>
+ <attr name="position" intvalue="18"/>
</folder>
</folder>
</folder>
Modified: trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/perspective/ActivePost.java
===================================================================
--- trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/perspective/ActivePost.java 2016-02-23 14:51:25 UTC (rev 9284)
+++ trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/perspective/ActivePost.java 2016-02-24 07:49:02 UTC (rev 9285)
@@ -1,7 +1,3 @@
-/*
- * To change this template, choose Tools | Templates
- * and open the template in the editor.
- */
package org.fudaa.fudaa.crue.post.perspective;
import org.fudaa.fudaa.crue.common.PerspectiveEnum;
@@ -9,7 +5,10 @@
import org.openide.awt.ActionID;
import org.openide.awt.ActionReference;
import org.openide.awt.ActionRegistration;
-
+/**
+ * Permet d'activer une perspective. Action utilisée dans la toobar pour changer de perspective. Pour la gestion des ordres des menus, voir le fichier
+ * layer.xml
+ */
@ActionID(category = "File", id = "org.fudaa.fudaa.crue.post.perspective.ActivePost")
@ActionRegistration(displayName = "#CTL_ActivePost")
@ActionReference(path = "Menu/Window" , position = 4)
Modified: trunk/soft/fudaa-crue/ui-post/src/main/resources/org/fudaa/fudaa/crue/post/layer.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-post/src/main/resources/org/fudaa/fudaa/crue/post/layer.xml 2016-02-23 14:51:25 UTC (rev 9284)
+++ trunk/soft/fudaa-crue/ui-post/src/main/resources/org/fudaa/fudaa/crue/post/layer.xml 2016-02-24 07:49:02 UTC (rev 9285)
@@ -16,6 +16,8 @@
<attr name="preferredID" stringvalue="PostEmhExplorerTopComponent"/>
</file>
<!--<file name="org-fudaa-fudaa-crue-post-PostMainTopComponent.instance_hidden"/>-->
+ <file name="org-netbeans-core-windows-actions-CloseAllButThisAction.instance_hidden"/>
+ <file name="org-netbeans-core-windows-actions-CloseAllDocumentsAction.instance_hidden"/>
</folder>
</folder>
<folder name="Menu">
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/perspective/ActiveReport.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/perspective/ActiveReport.java 2016-02-23 14:51:25 UTC (rev 9284)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/perspective/ActiveReport.java 2016-02-24 07:49:02 UTC (rev 9285)
@@ -1,7 +1,3 @@
-/*
- * To change this template, choose Tools | Templates
- * and open the template in the editor.
- */
package org.fudaa.fudaa.crue.report.perspective;
import java.util.Collection;
@@ -16,7 +12,10 @@
import org.openide.awt.ActionRegistration;
import org.openide.util.NbBundle;
import org.openide.util.lookup.Lookups;
-
+/**
+ * Permet d'activer une perspective. Action utilisée dans la toobar pour changer de perspective. Pour la gestion des ordres des menus, voir le fichier
+ * layer.xml
+ */
@ActionID(category = "File", id = "org.fudaa.fudaa.crue.report.perspective.ActiveReport")
@ActionRegistration(displayName = "#CTL_ActiveReport")
@ActionReference(path = "Menu/Window", position = 5)
Modified: trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/export/Bundle.properties
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/export/Bundle.properties 2016-02-23 14:51:25 UTC (rev 9284)
+++ trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/export/Bundle.properties 2016-02-24 07:49:02 UTC (rev 9285)
@@ -16,5 +16,5 @@
ExportAll.Action=Exporter\n
ExportAll.Tootltip=Export en masse
ExportEnded=Export termin\u00e9 vers le fichier {0}
-cantWriteToFile.error=Il est impossible d'\u00e9crire dans le fichier {0}.\nRaison: {1}
+cantWriteToFile.error=Il est impossible d''\u00e9crire dans le fichier {0}.\nRaison: {1}
cantWriteToFileUsedByAnotherProcess.error=il est probablement ouvert par une autre application (Excel)
Modified: trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/layer.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/layer.xml 2016-02-23 14:51:25 UTC (rev 9284)
+++ trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/layer.xml 2016-02-24 07:49:02 UTC (rev 9285)
@@ -1,7 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE filesystem PUBLIC "-//NetBeans//DTD Filesystem 1.2//EN" "http://www.netbeans.org/dtds/filesystem-1_2.dtd">
<filesystem>
- <folder name="Menu">
+ <folder name="Actions">
+ <folder name="Window">
+ <file name="org-netbeans-core-windows-actions-CloneDocumentAction.instance_hidden"/>
+ <file name="org-netbeans-core-windows-actions-CloseAllButThisAction.instance_hidden"/>
+ <file name="org-netbeans-core-windows-actions-CloseAllDocumentsAction.instance_hidden"/>
+ </folder>
+ </folder>
+ <folder name="Menu">
<!-- <folder name="Report">
<attr name="displayName" bundlevalue="org.fudaa.fudaa.crue.report.Bundle#Menu/Report"/>
<attr name="position" intvalue="8"/>
Modified: trunk/soft/fudaa-crue/ui-study/src/main/java/org/fudaa/fudaa/crue/study/perspective/ActiveStudy.java
===================================================================
--- trunk/soft/fudaa-crue/ui-study/src/main/java/org/fudaa/fudaa/crue/study/perspective/ActiveStudy.java 2016-02-23 14:51:25 UTC (rev 9284)
+++ trunk/soft/fudaa-crue/ui-study/src/main/java/org/fudaa/fudaa/crue/study/perspective/ActiveStudy.java 2016-02-24 07:49:02 UTC (rev 9285)
@@ -1,7 +1,3 @@
-/*
- * To change this template, choose Tools | Templates
- * and open the template in the editor.
- */
package org.fudaa.fudaa.crue.study.perspective;
import org.fudaa.fudaa.crue.common.PerspectiveEnum;
@@ -9,7 +5,10 @@
import org.openide.awt.ActionID;
import org.openide.awt.ActionReference;
import org.openide.awt.ActionRegistration;
-
+/**
+ * Permet d'activer une perspective. Action utilisée dans la toobar pour changer de perspective. Pour la gestion des ordres des menus, voir le fichier
+ * layer.xml
+ */
@ActionID(category = "File",
id = "org.fudaa.fudaa.crue.study.perspective.ActiveStudy")
@ActionRegistration(displayName = "#CTL_ActiveStudy")
Modified: trunk/soft/fudaa-crue/ui-study/src/main/resources/org/fudaa/fudaa/crue/study/layer.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-study/src/main/resources/org/fudaa/fudaa/crue/study/layer.xml 2016-02-23 14:51:25 UTC (rev 9284)
+++ trunk/soft/fudaa-crue/ui-study/src/main/resources/org/fudaa/fudaa/crue/study/layer.xml 2016-02-24 07:49:02 UTC (rev 9285)
@@ -1,7 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE filesystem PUBLIC "-//NetBeans//DTD Filesystem 1.2//EN" "http://www.netbeans.org/dtds/filesystem-1_2.dtd">
<filesystem>
- <folder name="Loaders">
+ <folder name="Actions">
+ <folder name="Window">
+ <file name="org-netbeans-core-windows-actions-CloneDocumentAction.instance_hidden"/>
+ <file name="org-netbeans-core-windows-actions-CloseAllButThisAction.instance_hidden"/>
+ <file name="org-netbeans-core-windows-actions-CloseAllDocumentsAction.instance_hidden"/>
+ </folder>
+ </folder>
+ <folder name="Loaders">
<folder name="content">
<folder name="unknown">
<folder name="Actions">
Modified: trunk/soft/fudaa-crue/ui-sysdoc/src/main/resources/org/fudaa/fudaa/crue/sysdoc/layer.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-sysdoc/src/main/resources/org/fudaa/fudaa/crue/sysdoc/layer.xml 2016-02-23 14:51:25 UTC (rev 9284)
+++ trunk/soft/fudaa-crue/ui-sysdoc/src/main/resources/org/fudaa/fudaa/crue/sysdoc/layer.xml 2016-02-24 07:49:02 UTC (rev 9285)
@@ -2,7 +2,11 @@
<!DOCTYPE filesystem PUBLIC "-//NetBeans//DTD Filesystem 1.2//EN" "http://www.netbeans.org/dtds/filesystem-1_2.dtd">
<filesystem>
<folder name="Actions">
- <folder name="Window"/>
+ <folder name="Window">
+ <file name="org-netbeans-core-windows-actions-CloneDocumentAction.instance_hidden"/>
+ <file name="org-netbeans-core-windows-actions-CloseAllButThisAction.instance_hidden"/>
+ <file name="org-netbeans-core-windows-actions-CloseAllDocumentsAction.instance_hidden"/>
+ </folder>
</folder>
<folder name="Menu">
<folder name="Window">
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-02-24 10:26:40
|
Revision: 9287
http://sourceforge.net/p/fudaa/svn/9287
Author: deniger
Date: 2016-02-24 10:26:38 +0000 (Wed, 24 Feb 2016)
Log Message:
-----------
CRUE-644
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/helper/ResPrtHelper.java
trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/data/ReportRunVariableKey.java
trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/data/ReportRunVariableTimeKey.java
trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/ReportExportProfilLongitudinal.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/config/AbstractReportGrapheBuilder.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilder.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportProfilLongitudinalTopComponent.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportResultProviderService.java
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/helper/ResPrtHelper.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/helper/ResPrtHelper.java 2016-02-24 10:25:04 UTC (rev 9286)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/helper/ResPrtHelper.java 2016-02-24 10:26:38 UTC (rev 9287)
@@ -2,7 +2,6 @@
import java.util.Arrays;
import java.util.List;
-import org.apache.commons.lang.StringUtils;
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetierConstants;
/**
@@ -10,13 +9,17 @@
* @author GRESSIER
*/
public class ResPrtHelper {
-
+
public static List<String> getZiniVar() {
return Arrays.asList(CrueConfigMetierConstants.ZINI);
}
-
+
public static List<String> getQiniVar() {
return Arrays.asList(CrueConfigMetierConstants.QINI);
}
-
+
+ public static boolean isRPTIVariable(String varName) {
+ return CrueConfigMetierConstants.ZINI.equals(varName) || CrueConfigMetierConstants.QINI.equals(varName);
+ }
+
}
Modified: trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/data/ReportRunVariableKey.java
===================================================================
--- trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/data/ReportRunVariableKey.java 2016-02-24 10:25:04 UTC (rev 9286)
+++ trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/data/ReportRunVariableKey.java 2016-02-24 10:26:38 UTC (rev 9287)
@@ -70,6 +70,9 @@
public boolean isReadVariable() {
return ReportVariableTypeEnum.READ.equals(variable.getVariableType());
}
+ public boolean isRPTIVariable() {
+ return ReportVariableTypeEnum.RESULTAT_RPTI.equals(variable.getVariableType());
+ }
public boolean isReadOrVariable() {
return isReadVariable() || ReportVariableTypeEnum.FORMULE.equals(variable.getVariableType());
Modified: trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/data/ReportRunVariableTimeKey.java
===================================================================
--- trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/data/ReportRunVariableTimeKey.java 2016-02-24 10:25:04 UTC (rev 9286)
+++ trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/data/ReportRunVariableTimeKey.java 2016-02-24 10:26:38 UTC (rev 9287)
@@ -51,6 +51,9 @@
public boolean isLimitProfilVariable() {
return ReportVariableTypeEnum.LIMIT_PROFIL.equals(runVariableKey.getVariable().getVariableType());
}
+ public boolean isRPTIVariable() {
+ return ReportVariableTypeEnum.RESULTAT_RPTI.equals(runVariableKey.getVariable().getVariableType());
+ }
public boolean isReadVariable() {
return ReportVariableTypeEnum.READ.equals(runVariableKey.getVariable().getVariableType());
Modified: trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/ReportExportProfilLongitudinal.java
===================================================================
--- trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/ReportExportProfilLongitudinal.java 2016-02-24 10:25:04 UTC (rev 9286)
+++ trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/ReportExportProfilLongitudinal.java 2016-02-24 10:26:38 UTC (rev 9287)
@@ -3,7 +3,9 @@
*/
package org.fudaa.dodico.crue.projet.report.export;
+import java.util.ArrayList;
import java.util.Collections;
+import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -55,7 +57,7 @@
}
@Override
- protected void writeInBook(Workbook wb, List<ReportRunVariableKey> variablesToExport, List<ResultatTimeKey> times) {
+ protected void writeInBook(Workbook wb, List<ReportRunVariableKey> variablesToExportInit, List<ResultatTimeKey> times) {
String sheetName = CtuluResource.CTULU.getString("Feuille {0}", CtuluLibString.getString(1));
ReportExcelFormatData formater = new ReportExcelFormatData(wb);
@@ -75,9 +77,9 @@
row.createCell(idx++).setCellValue(BusinessMessages.getString("prefix.sections"));
String currentRunName = this.resultService.getRunCourant().getRunKey().getDisplayName();
row.createCell(idx++).setCellValue(propertyXp.getDisplayNom() + BusinessMessages.ENTITY_SEPARATOR + currentRunName);
- final List<ReportRunVariableKey> variables = content.getProfilVariables();
+ final List<ReportRunVariableKey> profilVariables = content.getProfilVariables();
//les titres des limites de profils
- for (ReportRunVariableKey variable : variables) {
+ for (ReportRunVariableKey variable : profilVariables) {
if (ReportVariableTypeEnum.LIMIT_PROFIL.equals(variable.getVariable().getVariableType())) {
String displayName = displayNameById.get(variable.getVariableName());
if (StringUtils.isEmpty(displayName)) {
@@ -86,7 +88,22 @@
row.createCell(idx++).setCellValue(displayName + BusinessMessages.ENTITY_SEPARATOR + currentRunName);
}
}
- //les titres des variables
+
+ List<ReportRunVariableKey> variablesToExport = new ArrayList<>();
+ List<ReportRunVariableKey> variablesRPIToExport = new ArrayList<>();
+
+ //pour les valeur RPTI, il ne faut exporter qu'une seul fois par run.
+ for (ReportRunVariableKey variable : variablesToExportInit) {
+ if (variable.isRPTIVariable()) {
+ variablesRPIToExport.add(variable);
+ } else {
+ variablesToExport.add(variable);
+ }
+ }
+ for (ReportRunVariableKey variable : variablesRPIToExport) {
+ row.createCell(idx++).setCellValue(
+ variable.getVariable().getVariableDisplayName() + BusinessMessages.ENTITY_SEPARATOR + variable.getReportRunKey().getDisplayName());
+ }
for (ResultatTimeKey time : times) {
for (ReportRunVariableKey variable : variablesToExport) {
row.createCell(idx++).setCellValue(
@@ -128,7 +145,7 @@
Cell cell = row.createCell(idx++);
cell.setCellValue(reportLongitudinalPositionSection.getXpDisplay());
cell.setCellStyle(xpStyle);
- for (ReportRunVariableKey variable : variables) {
+ for (ReportRunVariableKey variable : profilVariables) {
if (ReportVariableTypeEnum.LIMIT_PROFIL.equals(variable.getVariable().getVariableType())) {
ItemEnum etiquette = limitHelper.getEtiquette(variable.getVariable().getVariableName());
LitNommeLimite limite = limitHelper.getLimite(variable.getVariable().getVariableName());
@@ -147,6 +164,18 @@
}
}
}
+
+ for (ReportRunVariableKey variable : variablesRPIToExport) {
+ Double value = resultService.getValue(variable, section.getNom());
+ cell = row.createCell(idx++);
+ if (value != null) {
+ cell.setCellValue(value.doubleValue());
+ final CellStyle style = formater.getStyle(resultService.getPropertyNature(variable.getVariableName()),
+ DecimalFormatEpsilonEnum.COMPARISON);
+ cell.setCellStyle(style);
+
+ }
+ }
for (ResultatTimeKey time : times) {
for (ReportRunVariableKey variable : variablesToExport) {
boolean isDz = ReportRunVariableHelper.isNatDzVar(variable.getVariable(), resultService);
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/config/AbstractReportGrapheBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/config/AbstractReportGrapheBuilder.java 2016-02-24 10:25:04 UTC (rev 9286)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/config/AbstractReportGrapheBuilder.java 2016-02-24 10:26:38 UTC (rev 9287)
@@ -385,9 +385,13 @@
Object selectedKey = getSelectedKey();
CourbeComparator comparator = new CourbeComparator();
Collections.sort(externe, comparator);
- Collections.sort(internCourbes, comparator);
+ if (internCourbes != null) {
+ Collections.sort(internCourbes, comparator);
+ }
List<EGCourbeSimple> courbes = new ArrayList<EGCourbeSimple>();
- courbes.addAll(internCourbes);
+ if (internCourbes != null) {
+ courbes.addAll(internCourbes);
+ }
courbes.addAll(externe);
uiController.getEGGrapheSimpleModel().removeAllCurves(null);
uiController.getEGGrapheSimpleModel().addCourbes((EGCourbeSimple[]) courbes.toArray(new EGCourbeSimple[courbes.size()]), null);
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilder.java 2016-02-24 10:25:04 UTC (rev 9286)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilder.java 2016-02-24 10:26:38 UTC (rev 9287)
@@ -113,7 +113,7 @@
Object key = ((CourbeModelWithKey) courbe.getModel()).getKey();
if (key != null && ReportRunVariableTimeKey.class.equals(key.getClass())) {
ReportRunVariableTimeKey reportKey = (ReportRunVariableTimeKey) key;
- if (!reportKey.isDefinedOnSelectedTimeStep() || reportKey.isLimitProfilVariable()) {
+ if (!reportKey.isDefinedOnSelectedTimeStep() || reportKey.isLimitProfilVariable() || reportKey.isRPTIVariable()) {
res.add(courbe);
}
}
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportProfilLongitudinalTopComponent.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportProfilLongitudinalTopComponent.java 2016-02-24 10:25:04 UTC (rev 9286)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportProfilLongitudinalTopComponent.java 2016-02-24 10:26:38 UTC (rev 9287)
@@ -172,8 +172,8 @@
}
}
// ajout Zini issu du RPTI
- List<String> varZIni = ResPrtHelper.getZiniVar();
- choosableVariables.addAll(varZIni);
+ choosableVariables.addAll(ResPrtHelper.getZiniVar());
+ choosableVariables.addAll(ResPrtHelper.getQiniVar());
return choosableVariables;
}
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportResultProviderService.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportResultProviderService.java 2016-02-24 10:25:04 UTC (rev 9286)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/service/ReportResultProviderService.java 2016-02-24 10:26:38 UTC (rev 9287)
@@ -18,6 +18,7 @@
import org.fudaa.dodico.crue.metier.emh.ResultatTimeKey;
import org.fudaa.dodico.crue.metier.helper.DonPrtHelper;
import org.fudaa.dodico.crue.metier.helper.EMHHelper;
+import org.fudaa.dodico.crue.metier.helper.ResPrtHelper;
import org.fudaa.dodico.crue.metier.transformer.TransformerEMHHelper;
import org.fudaa.dodico.crue.projet.report.ReportResultProviderServiceContrat;
import org.fudaa.dodico.crue.projet.report.data.ReportExpressionHelper;
@@ -140,6 +141,9 @@
@Override
public ReportVariableKey createVariableKey(String varName) {
+ if (ResPrtHelper.isRPTIVariable(varName)) {
+ return new ReportVariableKey(ReportVariableTypeEnum.RESULTAT_RPTI, varName);
+ }
if (reportFormuleService.isFormule(varName)) {
return new ReportVariableKey(ReportVariableTypeEnum.FORMULE, varName);
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-02-24 12:58:14
|
Revision: 9291
http://sourceforge.net/p/fudaa/svn/9291
Author: deniger
Date: 2016-02-24 12:58:11 +0000 (Wed, 24 Feb 2016)
Log Message:
-----------
CRUE-667
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/factory/DclmFactory.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculNodeFactory.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImporter.java
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/factory/DclmFactory.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/factory/DclmFactory.java 2016-02-24 12:20:58 UTC (rev 9290)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/factory/DclmFactory.java 2016-02-24 12:58:11 UTC (rev 9291)
@@ -232,6 +232,10 @@
return shortNom;
}
+ public String getShortName() {
+ return shortNom;
+ }
+
@Override
public String geti18nLongName() {
return getNom();
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculNodeFactory.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculNodeFactory.java 2016-02-24 12:20:58 UTC (rev 9290)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculNodeFactory.java 2016-02-24 12:58:11 UTC (rev 9291)
@@ -25,7 +25,6 @@
import org.fudaa.dodico.crue.metier.helper.CalcHelper;
import org.fudaa.dodico.crue.metier.helper.OrdCalcCloner;
import org.fudaa.dodico.crue.metier.helper.OrdCalcCloner.Result;
-import org.fudaa.dodico.crue.metier.transformer.TransformerEMHHelper;
import org.fudaa.fudaa.crue.common.node.NodeHelper;
import org.fudaa.fudaa.crue.common.services.ModellingScenarioService;
import org.fudaa.fudaa.crue.modelling.perspective.PerspectiveServiceModelling;
@@ -114,7 +113,9 @@
public CalculDclmNode createDclmNode(DonCLimM donCLimM) {
if (donCLimM.getCalculParent().isTransitoire()) {
CalcTransItem asTrans = (CalcTransItem) donCLimM;
- asTrans.setLoi(clonedLoisByName.get(asTrans.getLoi().getNom()));
+ if (asTrans.getLoi() != null) {
+ asTrans.setLoi(clonedLoisByName.get(asTrans.getLoi().getNom()));
+ }
return new CalculDclmTransNode(Children.LEAF, (CalcTransItem) donCLimM, modellingScenarioService.getSelectedProjet().getPropDefinition(),
perspectiveServiceModelling, donLoiHYConteneurCloned);
}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImporter.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImporter.java 2016-02-24 12:20:58 UTC (rev 9290)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/importer/CLimMsImporter.java 2016-02-24 12:58:11 UTC (rev 9291)
@@ -5,6 +5,7 @@
import gnu.trove.TLongObjectHashMap;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
@@ -190,7 +191,10 @@
it.remove();
}
}
- Map<String, DclmFactory.CalcBuilder> toMapOfNom = TransformerHelper.toMapOfNom(creators);
+ Map<String, DclmFactory.CalcBuilder> toMapOfNom = new HashMap<>();
+ for (DclmFactory.CalcBuilder creator : creators) {
+ toMapOfNom.put(creator.getShortName(), creator);
+ }
return toMapOfNom;
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-02-24 22:28:57
|
Revision: 9294
http://sourceforge.net/p/fudaa/svn/9294
Author: deniger
Date: 2016-02-24 22:28:54 +0000 (Wed, 24 Feb 2016)
Log Message:
-----------
CRUE-644
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/ReportExportProfilLongitudinal.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportLongitudinalExportAction.java
Modified: trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/ReportExportProfilLongitudinal.java
===================================================================
--- trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/ReportExportProfilLongitudinal.java 2016-02-24 20:28:54 UTC (rev 9293)
+++ trunk/soft/fudaa-crue/crue-project/src/main/java/org/fudaa/dodico/crue/projet/report/export/ReportExportProfilLongitudinal.java 2016-02-24 22:28:54 UTC (rev 9294)
@@ -6,6 +6,7 @@
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet;
+import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -36,6 +37,7 @@
import org.fudaa.dodico.crue.projet.report.data.ReportRunKey;
import org.fudaa.dodico.crue.projet.report.data.ReportRunVariableHelper;
import org.fudaa.dodico.crue.projet.report.data.ReportRunVariableKey;
+import org.fudaa.dodico.crue.projet.report.data.ReportVariableKey;
import org.fudaa.dodico.crue.projet.report.data.ReportVariableTypeEnum;
import org.fudaa.dodico.crue.projet.report.excel.ReportExcelFormatData;
import org.fudaa.dodico.crue.projet.report.longitudinal.ReportLongitudinalBrancheCartouche;
@@ -51,14 +53,49 @@
* @author Frederic Deniger
*/
public class ReportExportProfilLongitudinal extends ReportExportAbstract<ReportLongitudinalConfig, ReportRunVariableKey> {
-
+
public ReportExportProfilLongitudinal(ReportLongitudinalConfig config, ReportResultProviderServiceContrat resultService) {
super(config, resultService);
}
-
+
+ private static class RowCreator {
+
+ int rowIdx = 0;
+ int colOffset = 0;
+ int colIdx = 0;
+ int maxCol = 0;
+ final Sheet currentSheet;
+ Row currentRow;
+
+ public RowCreator(Sheet currentSheet) {
+ this.currentSheet = currentSheet;
+ }
+
+ public void getRowAndIncrement() {
+ currentRow = currentSheet.getRow(rowIdx);
+ if (currentRow == null) {
+ currentRow = currentSheet.createRow(rowIdx);
+ }
+ colIdx = colOffset;
+ rowIdx++;
+ }
+
+ public Cell createNextCell() {
+ Cell res = currentRow.createCell(colIdx++);
+ maxCol = Math.max(maxCol, colIdx);
+ return res;
+ }
+
+ public void nextBlock() {
+ rowIdx = 0;
+ colOffset = maxCol;
+ }
+
+ }
+
@Override
protected void writeInBook(Workbook wb, List<ReportRunVariableKey> variablesToExportInit, List<ResultatTimeKey> times) {
-
+
String sheetName = CtuluResource.CTULU.getString("Feuille {0}", CtuluLibString.getString(1));
ReportExcelFormatData formater = new ReportExcelFormatData(wb);
Sheet currentSheet = wb.createSheet(sheetName);
@@ -68,138 +105,142 @@
ReportLongitudinalLimitHelper limitHelper = new ReportLongitudinalLimitHelper(ccm);
final Map<String, String> displayNameById = limitHelper.getDisplayNameById();
final ItemVariable propertyXp = ccm.getProperty(CrueConfigMetierConstants.PROP_XP);
-
- //ecriture des titres
- int rowIdx = 0;
- Row row = currentSheet.createRow(rowIdx++);
- int idx = 0;
- row.createCell(idx++).setCellValue(BusinessMessages.getString("prefix.branches"));
- row.createCell(idx++).setCellValue(BusinessMessages.getString("prefix.sections"));
- String currentRunName = this.resultService.getRunCourant().getRunKey().getDisplayName();
- row.createCell(idx++).setCellValue(propertyXp.getDisplayNom() + BusinessMessages.ENTITY_SEPARATOR + currentRunName);
- final List<ReportRunVariableKey> profilVariables = content.getProfilVariables();
- //les titres des limites de profils
- for (ReportRunVariableKey variable : profilVariables) {
- if (ReportVariableTypeEnum.LIMIT_PROFIL.equals(variable.getVariable().getVariableType())) {
- String displayName = displayNameById.get(variable.getVariableName());
- if (StringUtils.isEmpty(displayName)) {
- displayName = variable.getVariableName();
+ Set<ReportRunKey> runs = new LinkedHashSet<>();
+ for (ReportRunVariableKey reportRunVariableKey : variablesToExportInit) {
+ runs.add(reportRunVariableKey.getReportRunKey());
+ }
+ RowCreator rowCreator = new RowCreator(currentSheet);
+ for (ReportRunKey runKey : runs) {
+ //ecriture des titres
+ rowCreator.getRowAndIncrement();
+ String runName = runKey.getDisplayName();
+ rowCreator.createNextCell().setCellValue(BusinessMessages.getString("prefix.branches") + BusinessMessages.ENTITY_SEPARATOR + runName);
+ rowCreator.createNextCell().setCellValue(BusinessMessages.getString("prefix.sections") + BusinessMessages.ENTITY_SEPARATOR + runName);
+ rowCreator.createNextCell().setCellValue(propertyXp.getDisplayNom() + BusinessMessages.ENTITY_SEPARATOR + runName);
+ final List<ReportRunVariableKey> profilVariables = content.getProfilVariables();
+ //les titres des limites de profils
+ for (ReportRunVariableKey variable : profilVariables) {
+ if (ReportVariableTypeEnum.LIMIT_PROFIL.equals(variable.getVariable().getVariableType())) {
+ String displayName = displayNameById.get(variable.getVariableName());
+ if (StringUtils.isEmpty(displayName)) {
+ displayName = variable.getVariableName();
+ }
+ rowCreator.createNextCell().setCellValue(displayName + BusinessMessages.ENTITY_SEPARATOR + runName);
}
- row.createCell(idx++).setCellValue(displayName + BusinessMessages.ENTITY_SEPARATOR + currentRunName);
}
- }
+
+ List<ReportRunVariableKey> variablesToExport = new ArrayList<>();
+ List<ReportRunVariableKey> variablesRPIToExport = new ArrayList<>();
- List<ReportRunVariableKey> variablesToExport = new ArrayList<>();
- List<ReportRunVariableKey> variablesRPIToExport = new ArrayList<>();
-
- //pour les valeur RPTI, il ne faut exporter qu'une seul fois par run.
- for (ReportRunVariableKey variable : variablesToExportInit) {
- if (variable.isRPTIVariable()) {
- variablesRPIToExport.add(variable);
- } else {
- variablesToExport.add(variable);
+ //pour les valeur RPTI, il ne faut exporter qu'une seul fois par runKey.
+ for (ReportRunVariableKey variable : variablesToExportInit) {
+ if (variable.getRunKey().equals(runKey)) {
+ if (variable.isRPTIVariable()) {
+ variablesRPIToExport.add(variable);
+ } else {
+ variablesToExport.add(variable);
+ }
+ }
}
- }
- for (ReportRunVariableKey variable : variablesRPIToExport) {
- row.createCell(idx++).setCellValue(
- variable.getVariable().getVariableDisplayName() + BusinessMessages.ENTITY_SEPARATOR + variable.getReportRunKey().getDisplayName());
- }
- for (ResultatTimeKey time : times) {
- for (ReportRunVariableKey variable : variablesToExport) {
- row.createCell(idx++).setCellValue(
- variable.getVariable().getVariableDisplayName() + BusinessMessages.ENTITY_SEPARATOR + ResultatTimeKey.timeToString(time) + BusinessMessages.ENTITY_SEPARATOR + variable.
- getReportRunKey().
- getDisplayName());
+ for (ReportRunVariableKey variable : variablesRPIToExport) {
+ rowCreator.createNextCell().setCellValue(variable.getVariable().getVariableDisplayName() + BusinessMessages.ENTITY_SEPARATOR + runName);
}
- }
- final List<ReportLongitudinalBrancheConfig> branchesConfig = content.getBranchesConfig();
- ReportLongitudinalPositionBuilder positionBuilder = new ReportLongitudinalPositionBuilder(this.resultService, ccm);
- final ReportRunKey runCourant = this.resultService.getRunCourant().getRunKey();
- Set<ReportRunKey> keys = Collections.singleton(runCourant);
+ for (ResultatTimeKey time : times) {
+ for (ReportRunVariableKey variable : variablesToExport) {
+ rowCreator.createNextCell().setCellValue(
+ variable.getVariable().getVariableDisplayName() + BusinessMessages.ENTITY_SEPARATOR + ResultatTimeKey.timeToString(time) + BusinessMessages.ENTITY_SEPARATOR + runName);
+ }
+ }
+ final List<ReportLongitudinalBrancheConfig> branchesConfig = content.getBranchesConfig();
+ ReportLongitudinalPositionBuilder positionBuilder = new ReportLongitudinalPositionBuilder(this.resultService, ccm);
+ Set<ReportRunKey> keys = Collections.singleton(runKey);
- //construction des cartouches
- double xpInit = 0;
- ReportLongitudinalPositionBrancheContent result = new ReportLongitudinalPositionBrancheContent();
- for (ReportLongitudinalBrancheConfig brancheConfig : branchesConfig) {
- xpInit = xpInit + brancheConfig.getDecalXp();
- positionBuilder.buildPositions(xpInit, brancheConfig, result, keys);
- xpInit = xpInit + brancheConfig.getLength();
- }
+ //construction des cartouches
+ double xpInit = 0;
+ ReportLongitudinalPositionBrancheContent result = new ReportLongitudinalPositionBrancheContent();
+ for (ReportLongitudinalBrancheConfig brancheConfig : branchesConfig) {
+ xpInit = xpInit + brancheConfig.getDecalXp();
+ positionBuilder.buildPositions(xpInit, brancheConfig, result, keys);
+ xpInit = xpInit + brancheConfig.getLength();
+ }
- //ecritures des valeurs
- final List<ReportLongitudinalBrancheCartouche> cartouches = result.getCartouches();
- //les styles commun
- final CellStyle xpStyle = formater.getStyle(propertyXp.getNature(), DecimalFormatEpsilonEnum.COMPARISON);
- final PropertyNature natureForZ = resultService.getCcm().getProperty(CrueConfigMetierConstants.PROP_Z).getNature();
- final CellStyle zStyle = formater.
- getStyle(natureForZ, DecimalFormatEpsilonEnum.COMPARISON);
- for (ReportLongitudinalBrancheCartouche cartouche : cartouches) {
- final ReportLongitudinalPositionSectionByRun sectionPositions = cartouche.getSectionPositions(runCourant);
- final List<ReportLongitudinalPositionSection> sectionDisplayPositions = sectionPositions.getSectionDisplayPositions();
- for (ReportLongitudinalPositionSection reportLongitudinalPositionSection : sectionDisplayPositions) {
- idx = 0;
- row = currentSheet.createRow(rowIdx++);
- final CatEMHSection section = reportLongitudinalPositionSection.getName();
- row.createCell(idx++).setCellValue(section.getBranche().getNom());
- row.createCell(idx++).setCellValue(section.getNom());
- Cell cell = row.createCell(idx++);
- cell.setCellValue(reportLongitudinalPositionSection.getXpDisplay());
- cell.setCellStyle(xpStyle);
- for (ReportRunVariableKey variable : profilVariables) {
- if (ReportVariableTypeEnum.LIMIT_PROFIL.equals(variable.getVariable().getVariableType())) {
- ItemEnum etiquette = limitHelper.getEtiquette(variable.getVariable().getVariableName());
- LitNommeLimite limite = limitHelper.getLimite(variable.getVariable().getVariableName());
- cell = row.createCell(idx++);
- if (etiquette != null || limite != null) {
- EMHSectionProfil retrieveProfil = ReportProfilHelper.retrieveProfil(section);
- if (retrieveProfil != null) {
- DonPrtGeoProfilSection profil = DonPrtHelper.getProfilSection(retrieveProfil);
- Double z = ReportExportUtils.computeZ(etiquette, limite, profil, ccm);
- if (z != null) {
- cell.setCellValue(z.doubleValue());
- cell.setCellStyle(zStyle);
-
+ //ecritures des valeurs
+ final List<ReportLongitudinalBrancheCartouche> cartouches = result.getCartouches();
+ //les styles commun
+ final CellStyle xpStyle = formater.getStyle(propertyXp.getNature(), DecimalFormatEpsilonEnum.COMPARISON);
+ final PropertyNature natureForZ = resultService.getCcm().getProperty(CrueConfigMetierConstants.PROP_Z).getNature();
+ final CellStyle zStyle = formater.
+ getStyle(natureForZ, DecimalFormatEpsilonEnum.COMPARISON);
+ for (ReportLongitudinalBrancheCartouche cartouche : cartouches) {
+ final ReportLongitudinalPositionSectionByRun sectionPositions = cartouche.getSectionPositions(runKey);
+ final List<ReportLongitudinalPositionSection> sectionDisplayPositions = sectionPositions.getSectionDisplayPositions();
+ for (ReportLongitudinalPositionSection reportLongitudinalPositionSection : sectionDisplayPositions) {
+ rowCreator.getRowAndIncrement();
+ final CatEMHSection section = reportLongitudinalPositionSection.getName();
+ rowCreator.createNextCell().setCellValue(section.getBranche().getNom());
+ rowCreator.createNextCell().setCellValue(section.getNom());
+ Cell cell = rowCreator.createNextCell();
+ cell.setCellValue(reportLongitudinalPositionSection.getXpDisplay());
+ cell.setCellStyle(xpStyle);
+ for (ReportRunVariableKey variable : profilVariables) {
+ if (ReportVariableTypeEnum.LIMIT_PROFIL.equals(variable.getVariable().getVariableType())) {
+ ItemEnum etiquette = limitHelper.getEtiquette(variable.getVariable().getVariableName());
+ LitNommeLimite limite = limitHelper.getLimite(variable.getVariable().getVariableName());
+ cell = rowCreator.createNextCell();
+ if (etiquette != null || limite != null) {
+ EMHSectionProfil retrieveProfil = ReportProfilHelper.retrieveProfil(section);
+ if (retrieveProfil != null) {
+ DonPrtGeoProfilSection profil = DonPrtHelper.getProfilSection(retrieveProfil);
+ Double z = ReportExportUtils.computeZ(etiquette, limite, profil, ccm);
+ if (z != null) {
+ cell.setCellValue(z.doubleValue());
+ cell.setCellStyle(zStyle);
+
+ }
}
}
}
}
- }
-
- for (ReportRunVariableKey variable : variablesRPIToExport) {
- Double value = resultService.getValue(variable, section.getNom());
- cell = row.createCell(idx++);
- if (value != null) {
- cell.setCellValue(value.doubleValue());
- final CellStyle style = formater.getStyle(resultService.getPropertyNature(variable.getVariableName()),
- DecimalFormatEpsilonEnum.COMPARISON);
- cell.setCellStyle(style);
-
- }
- }
- for (ResultatTimeKey time : times) {
- for (ReportRunVariableKey variable : variablesToExport) {
- boolean isDz = ReportRunVariableHelper.isNatDzVar(variable.getVariable(), resultService);
- Double value = resultService.getValue(time, variable, section.getNom());
- if (isDz && value != null) {
- Double valueZf = ReportProfilHelper.getRPTGZf(section);
- if (valueZf == null) {
- value = null;
- } else {
- value = Double.valueOf(value.doubleValue() + valueZf.doubleValue());
- }
- }
- cell = row.createCell(idx++);
+
+ for (ReportRunVariableKey variableInit : variablesRPIToExport) {
+ ReportRunVariableKey variable = new ReportRunVariableKey(runKey, variableInit.getVariable());
+ Double value = resultService.getValue(variable, section.getNom());
+ cell = rowCreator.createNextCell();
if (value != null) {
cell.setCellValue(value.doubleValue());
final CellStyle style = formater.getStyle(resultService.getPropertyNature(variable.getVariableName()),
DecimalFormatEpsilonEnum.COMPARISON);
cell.setCellStyle(style);
-
+
}
}
+ for (ResultatTimeKey time : times) {
+ for (ReportRunVariableKey variableInit : variablesToExport) {
+ ReportRunVariableKey variable = new ReportRunVariableKey(runKey, variableInit.getVariable());
+ boolean isDz = ReportRunVariableHelper.isNatDzVar(variable.getVariable(), resultService);
+ Double value = resultService.getValue(time, variable, section.getNom());
+ if (isDz && value != null) {
+ Double valueZf = ReportProfilHelper.getRPTGZf(section);
+ if (valueZf == null) {
+ value = null;
+ } else {
+ value = Double.valueOf(value.doubleValue() + valueZf.doubleValue());
+ }
+ }
+ cell = rowCreator.createNextCell();
+ if (value != null) {
+ cell.setCellValue(value.doubleValue());
+ final CellStyle style = formater.getStyle(resultService.getPropertyNature(variable.getVariableName()),
+ DecimalFormatEpsilonEnum.COMPARISON);
+ cell.setCellStyle(style);
+
+ }
+ }
+ }
}
}
+ rowCreator.nextBlock();
}
}
-
+
}
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportLongitudinalExportAction.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportLongitudinalExportAction.java 2016-02-24 20:28:54 UTC (rev 9293)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportLongitudinalExportAction.java 2016-02-24 22:28:54 UTC (rev 9294)
@@ -84,7 +84,9 @@
keys.addAll(runKey);
Collections.sort(keys, ObjetNommeByNameComparator.INSTANCE);
final Set<ResultatTimeKey> selectedTimeKeys = new TreeSet<>();
- selectedTimeKeys.add(reportResultProviderService.getReportService().getSelectedTime());
+ if (reportResultProviderService.getReportService().getSelectedTime() != null) {
+ selectedTimeKeys.add(reportResultProviderService.getReportService().getSelectedTime());
+ }
selectedTimeKeys.addAll(topComponent.getReportConfig().getTimes());
final List<ReportRunVariableKey> variablesKeys = variableChooser.getKeysForRuns(reportResultProviderService, toExport, keys);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-03-09 15:22:13
|
Revision: 9312
http://sourceforge.net/p/fudaa/svn/9312
Author: deniger
Date: 2016-03-09 15:22:09 +0000 (Wed, 09 Mar 2016)
Log Message:
-----------
CRUE-634
CRUE-692
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-branding/src/main/nbm-branding/modules/org-netbeans-core-windows.jar/org/netbeans/core/windows/actions/Bundle_fr.properties
trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/CrueSwingWorker.java
trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/DialogHelper.java
trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/UiContext.java
trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/CourbesUiController.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/ReportVisualTopComponent.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportExportHelper.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportExportWriter.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalCourbesUiResController.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/temporal/ReportTemporalCourbesUiResController.java
trunk/soft/fudaa-crue/ui-report/src/main/resources/org/fudaa/fudaa/crue/report/export/Bundle.properties
Modified: trunk/soft/fudaa-crue/ui-branding/src/main/nbm-branding/modules/org-netbeans-core-windows.jar/org/netbeans/core/windows/actions/Bundle_fr.properties
===================================================================
--- trunk/soft/fudaa-crue/ui-branding/src/main/nbm-branding/modules/org-netbeans-core-windows.jar/org/netbeans/core/windows/actions/Bundle_fr.properties 2016-03-09 15:19:34 UTC (rev 9311)
+++ trunk/soft/fudaa-crue/ui-branding/src/main/nbm-branding/modules/org-netbeans-core-windows.jar/org/netbeans/core/windows/actions/Bundle_fr.properties 2016-03-09 15:22:09 UTC (rev 9312)
@@ -22,9 +22,9 @@
LBL_WindowTransparencyHint=Maintenir la touche [Ctrl+clavier num\u00e9rique 0] pour rendre transparente une fen\u00eatre minimis\u00e9e
CTL_CloseModeAction=Fermer le groupe
CTL_MinimizeModeAction=Minimiser le groupe
-CTL_MinimizeWindowAction=Minimiser
LBL_CloseAllDocumentsAction=Tout Fermer
CTL_CloseAllButThisAction=Fermer les autres vues
CTL_MoveWindowLeftContextAction=D\u00e9placer \u00e0 gauche
CTL_MoveWindowRightContextAction=D\u00e9placer \u00e0 droite
+
Modified: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/CrueSwingWorker.java
===================================================================
--- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/CrueSwingWorker.java 2016-03-09 15:19:34 UTC (rev 9311)
+++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/CrueSwingWorker.java 2016-03-09 15:22:09 UTC (rev 9312)
@@ -15,11 +15,17 @@
public abstract class CrueSwingWorker<R> extends SwingWorker<R, Object> {
private final ProgressHandle ph;
+ private final String progressName;
public CrueSwingWorker(String progessName) {
+ this.progressName = progessName;
this.ph = ProgressHandleFactory.createHandle(progessName);
}
+ public String getProgressName() {
+ return progressName;
+ }
+
@Override
protected R doInBackground() throws Exception {
ph.start();
Modified: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/DialogHelper.java
===================================================================
--- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/DialogHelper.java 2016-03-09 15:19:34 UTC (rev 9311)
+++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/DialogHelper.java 2016-03-09 15:22:09 UTC (rev 9312)
@@ -153,25 +153,34 @@
NotifyDescriptor nd = new NotifyDescriptor.Message(msg, NotifyDescriptor.ERROR_MESSAGE);
nd.setTitle(title);
DialogDisplayer.getDefault().notify(nd);
- NotificationDisplayer.getDefault().notify(title, CrueIconsProvider.getIcon("org/fudaa/fudaa/crue/common/icons/erreur-bloquante.png"), panelInfo, null, NotificationDisplayer.Priority.SILENT);
+ NotificationDisplayer.getDefault().notify(title, CrueIconsProvider.getIcon("org/fudaa/fudaa/crue/common/icons/erreur-bloquante.png"), panelInfo,
+ null, NotificationDisplayer.Priority.SILENT);
}
public static void showWarn(String title, String msg) {
NotifyDescriptor nd = new NotifyDescriptor.Message(msg, NotifyDescriptor.WARNING_MESSAGE);
nd.setTitle(title);
DialogDisplayer.getDefault().notify(nd);
+ NotificationDisplayer.getDefault().notify(title, CrueIconsProvider.getIcon("org/fudaa/fudaa/crue/common/icons/avertissement.png"), msg,
+ null, NotificationDisplayer.Priority.SILENT);
}
public static void showWarn(String msg) {
NotifyDescriptor nd = new NotifyDescriptor.Message(msg, NotifyDescriptor.WARNING_MESSAGE);
nd.setTitle(org.openide.util.NbBundle.getMessage(DialogHelper.class, "Warn"));
DialogDisplayer.getDefault().notify(nd);
+ NotificationDisplayer.getDefault().notify(msg, CrueIconsProvider.getIcon("org/fudaa/fudaa/crue/common/icons/avertissement.png"), msg,
+ null, NotificationDisplayer.Priority.SILENT);
}
public static void showInfo(String title, Object msg) {
NotifyDescriptor nd = new NotifyDescriptor.Message(msg, NotifyDescriptor.INFORMATION_MESSAGE);
nd.setTitle(title);
DialogDisplayer.getDefault().notify(nd);
+ if (msg instanceof String) {
+ NotificationDisplayer.getDefault().notify(title, CrueIconsProvider.getIcon("org/fudaa/fudaa/crue/common/icons/information.png"),
+ (String) msg, null, NotificationDisplayer.Priority.SILENT);
+ }
}
public static void showInfo(final String title, final Object msg, boolean later) {
@@ -221,7 +230,8 @@
return showQuestion(dialogDescriptor, classToSave);
}
- public static boolean showQuestionAndSaveDialogConf(String title, Object message, Class classToSave, String helpId, PerspectiveEnum perspective, boolean bDisplayHelpButton) {
+ public static boolean showQuestionAndSaveDialogConf(String title, Object message, Class classToSave, String helpId, PerspectiveEnum perspective,
+ boolean bDisplayHelpButton) {
DialogDescriptor descriptor = new DialogDescriptor(message, title);
if (helpId != null) {
SysdocUrlBuilder.installDialogHelpCtx(descriptor, helpId, perspective, bDisplayHelpButton);
@@ -246,7 +256,7 @@
public static UserSaveAnswer confirmSaveOrNot() {
return confirmSaveOrNot(
NbBundle.getMessage(DialogHelper.class, "SaveDialog.Title"), NbBundle.getMessage(DialogHelper.class,
- "SaveDialog.Content"),
+ "SaveDialog.Content"),
NbBundle.getMessage(DialogHelper.class, "SaveDialog.SaveAction"),
NbBundle.getMessage(DialogHelper.class, "SaveDialog.DontSaveAction"));
}
Modified: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/UiContext.java
===================================================================
--- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/UiContext.java 2016-03-09 15:19:34 UTC (rev 9311)
+++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/UiContext.java 2016-03-09 15:22:09 UTC (rev 9312)
@@ -16,10 +16,12 @@
import org.fudaa.ctulu.ProgressionFuAdapter;
import org.fudaa.ctulu.ProgressionInterface;
import org.fudaa.ctulu.gui.PopupMenuReceiver;
+import org.fudaa.fudaa.crue.common.CrueIconsProvider;
import org.jdesktop.swingx.JXTree;
import org.jdesktop.swingx.treetable.DefaultTreeTableModel;
import org.openide.DialogDisplayer;
import org.openide.NotifyDescriptor;
+import org.openide.awt.NotificationDisplayer;
import org.openide.windows.WindowManager;
/**
@@ -46,6 +48,8 @@
NotifyDescriptor nd = new NotifyDescriptor(_msg, _titre, NotifyDescriptor.DEFAULT_OPTION, NotifyDescriptor.ERROR_MESSAGE,
new Object[]{NotifyDescriptor.OK_OPTION}, NotifyDescriptor.OK_OPTION);
DialogDisplayer.getDefault().notify(nd);
+ NotificationDisplayer.getDefault().notify(_titre, CrueIconsProvider.getIcon("org/fudaa/fudaa/crue/common/icons/erreur-bloquante.png"), _msg,
+ null, NotificationDisplayer.Priority.SILENT);
}
@@ -88,11 +92,14 @@
public void message(String _titre, String _msg, boolean _tempo) {
NotifyDescriptor nd = new NotifyDescriptor.Message(_msg, NotifyDescriptor.INFORMATION_MESSAGE);
DialogDisplayer.getDefault().notify(nd);
+ NotificationDisplayer.getDefault().notify(_titre, CrueIconsProvider.getIcon("org/fudaa/fudaa/crue/common/icons/information.png"),
+ _msg, null, NotificationDisplayer.Priority.SILENT);
}
@Override
public boolean question(String _titre, String _text) {
- NotifyDescriptor nd = new NotifyDescriptor(_text, _titre, NotifyDescriptor.YES_NO_OPTION, NotifyDescriptor.QUESTION_MESSAGE, null, NotifyDescriptor.OK_OPTION);
+ NotifyDescriptor nd = new NotifyDescriptor(_text, _titre, NotifyDescriptor.YES_NO_OPTION, NotifyDescriptor.QUESTION_MESSAGE, null,
+ NotifyDescriptor.OK_OPTION);
Object notify = DialogDisplayer.getDefault().notify(nd);
return NotifyDescriptor.YES_OPTION.equals(notify);
}
@@ -102,6 +109,8 @@
NotifyDescriptor nd = new NotifyDescriptor(_msg, _titre, NotifyDescriptor.DEFAULT_OPTION, NotifyDescriptor.WARNING_MESSAGE,
new Object[]{NotifyDescriptor.OK_OPTION}, NotifyDescriptor.OK_OPTION);
DialogDisplayer.getDefault().notify(nd);
+ NotificationDisplayer.getDefault().notify(_titre, CrueIconsProvider.getIcon("org/fudaa/fudaa/crue/common/icons/avertissement.png"), _msg,
+ null, NotificationDisplayer.Priority.SILENT);
}
public static JXTreeTableExtended createTreeTable(final DefaultTreeTableModel model, PopupMenuReceiver receiver) {
Modified: trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/CourbesUiController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/CourbesUiController.java 2016-03-09 15:19:34 UTC (rev 9311)
+++ trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/CourbesUiController.java 2016-03-09 15:22:09 UTC (rev 9312)
@@ -202,6 +202,7 @@
toolbar.add(new JSeparator());
toolbar.add(new CourbeVisibiltyUIAction(graphe).buildToolButton(EbliComponentFactory.INSTANCE));
EGTableAction tableAction = (EGTableAction) getActions("TABLE").get(0);
+ tableAction.setUi(CtuluUIForNetbeans.DEFAULT);
tableAction.setAddOptions(false);
tableAction.setAddCheckbox(true);
tableAction.setShowColumnToExport(false);
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/ReportVisualTopComponent.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/ReportVisualTopComponent.java 2016-03-09 15:19:34 UTC (rev 9311)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/ReportVisualTopComponent.java 2016-03-09 15:22:09 UTC (rev 9312)
@@ -82,7 +82,7 @@
preferredID = ReportVisualTopComponent.TOPCOMPONENT_ID)
public final class ReportVisualTopComponent extends AbstractReportTimeTopComponent implements LookupListener, ExplorerManager.Provider,
CtuluImageProducer, ReportTopComponentConfigurable<ReportPlanimetryConfig>, PropertyChangeListener {
-
+
public static final String TOPCOMPONENT_ID = "ReportVisualTopComponent";
public static final String TOPCOMPONENT_ACTION = "CTL_" + TOPCOMPONENT_ID;
public static final String TOPCOMPONENT_ACTION_DISPLAYNAME = "#" + TOPCOMPONENT_ACTION;
@@ -94,8 +94,9 @@
private Lookup.Result<Long> resultatEMHsSelected;
private final ExplorerManager em = new ExplorerManager();
ReportPlanimetryConfig reportPlanimetryConfig = new ReportPlanimetryConfig();
+ private boolean runOpenedAndZoomSet = false;
private final ReportPlanimetryConfigurer reportPlanimetryConfigurer = new ReportPlanimetryConfigurer();
-
+
public ReportVisualTopComponent() {
initComponents();
setDefaultName();
@@ -107,27 +108,27 @@
ActionMap map = this.getActionMap();
associateLookup(ExplorerUtils.createLookup(em, map));
}
-
+
@Override
protected String getHelpCtxId() {
return SysdocUrlBuilder.getTopComponentHelpCtxId("vuePlanimetrie", PerspectiveEnum.REPORT);
}
-
+
@Override
public ReportPlanimetryConfig getReportConfig() {
return reportPlanimetryConfig;
}
-
+
@Override
public boolean isClosable() {
return false;
}
-
+
@Override
public void rangeChanged() {
setReportConfig(getReportConfig(), false);
}
-
+
@Override
public void setReportConfig(ReportPlanimetryConfig newConfig, boolean fromTemplate) {
super.updating = true;
@@ -154,27 +155,27 @@
}
}
private ReportViewLineInfo info;
-
+
@Override
public void setReportInfo(ReportViewLineInfo info) {
this.info = info;
}
-
+
@Override
public AbstractReportTopComponent getTopComponent() {
return this;
}
-
+
@Override
public void updateFrameName() {
setName(info == null ? "" : info.getNom());
updateTopComponentName();
}
-
+
public ReportPlanimetryConfigurer getReportPlanimetryConfigurer() {
return reportPlanimetryConfigurer;
}
-
+
private void updateConfigurer() {
if (panel != null) {
final PlanimetryController planimetryController = panel.getPlanimetryController();
@@ -199,22 +200,22 @@
panel.getVueCalque().repaint(0);
}
}
-
+
@Override
public BufferedImage produceImage(Map params) {
return panel.produceImage(params);
}
-
+
@Override
public BufferedImage produceImage(int w, int h, Map params) {
return panel.produceImage(w, h, params);
}
-
+
@Override
public Dimension getDefaultImageDimension() {
return panel.getDefaultImageDimension();
}
-
+
@Override
protected void componentActivated() {
super.componentActivated();
@@ -223,19 +224,19 @@
panel.requestFocusInWindow();
}
}
-
+
@Override
protected void componentDeactivated() {
super.componentDeactivated();
ExplorerUtils.activateActions(em, false);
}
-
+
@Override
public ExplorerManager getExplorerManager() {
return em;
}
Map<String, Long> calcByName;
-
+
@Override
public void selectedTimeChanged() {
if (reportService.getRunCourant() != null & panel != null) {
@@ -248,11 +249,11 @@
panel.getPlanimetryController().setEditedCalcul(calcSelected);
}
}
-
+
@Override
public void timeFormatChanged() {
}
-
+
@Override
public void setEditable(boolean b) {
this.editable = b;
@@ -261,7 +262,7 @@
planimetryVisuPanel.getPlanimetryController().setEditable(b, false);
}
}
-
+
@Override
public void setModified(boolean modified) {
super.setModified(modified);
@@ -271,7 +272,7 @@
}
}
}
-
+
@Override
protected void runLoadedHandler() {
if (reportVisuService.getPlanimetryVisuPanel() != null) {
@@ -279,11 +280,11 @@
}
}
VisuConfiguration initConfiguration;
-
+
protected void scenarioVisuLoaded() {
- final double[][] repere = panel == null ? null : panel.getVueCalque().getRepere();
+ final double[][] repere = (panel == null) ? null : panel.getVueCalque().getRepere();
this.removeAll();
-
+
panel = reportVisuService.getPlanimetryVisuPanel();
List<BCalque> mainLayers = panel.getPlanimetryController().getMainLayers();
for (BCalque bCalque : mainLayers) {
@@ -308,18 +309,21 @@
main.add(bottom, BorderLayout.SOUTH);
this.repaint();
super.revalidate();
+
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
- if (repere != null) {
+ if (repere != null && isOpened() && runOpenedAndZoomSet) {
panel.getVueCalque().setRepere(repere);
-
+
} else {
panel.restaurer();
}
-
+ if (isOpened()) {
+ runOpenedAndZoomSet = true;
+ }
selectedTimeChanged();
-
+
panel.getPlanimetryController()
.setEditable(editable);
}
@@ -328,20 +332,20 @@
}
private final Set<String> ignoreProperties = new TreeSet<String>(Arrays.asList("versEcran", "versReel"));
VisuChangerListener modificationChangeListener = new VisuChangerListener();
-
+
@Override
public void propertyChange(PropertyChangeEvent evt) {
if (panel != null && !updating) {
reportPlanimetryConfig.setVisibility(panel.getPlanimetryController().getLayerVisibility());
reportViewServiceContrat.changesDoneIn(ReportVisualTopComponent.this);
-
+
}
-
+
}
private PlanimetryVisuPanel panel;
private LayerSelectionListener selectionListener = null;
SelectedEMHsLookupListener selectedEMHsLookupListener;
-
+
public void buildCalcMapIfNeeded() {
if (calcByName == null) {
calcByName = new HashMap<String, Long>();
@@ -352,7 +356,7 @@
}
}
}
-
+
@Override
public void clearReportModifications() {
updating = true;
@@ -364,13 +368,13 @@
}
clearModificationState();
updating = false;
-
+
}
-
+
private void setDefaultName() throws MissingResourceException {
setName(NbBundle.getMessage(ReportVisualTopComponent.class, TOPCOMPONENT_ACTION));
}
-
+
private void restoreDefaultConfigurationData() {
ReportTemplateFileProvider template = new ReportTemplateFileProvider();
reportPlanimetryConfig = (ReportPlanimetryConfig) template.loadTemplate(ReportContentType.PLANIMETRY);
@@ -384,20 +388,20 @@
setDefaultName();
setModified(false);
}
-
+
private void clearModificationState() {
setModified(false);
-
+
}
-
+
private class LayerSelectionListener implements ZSelectionListener {
-
+
@Override
public void selectionChanged(ZSelectionEvent _evt) {
selectionChangedInPanel();
}
}
-
+
protected void selectionChangedInPanel() {
if (updating) {
return;
@@ -424,12 +428,12 @@
//met à jour la sélection des EMHs.
reportSelectedEMHService.setSelectedEMHs(selected);
}
-
+
protected JComponent createToolbar(PlanimetryVisuPanel panel) {
SaveTemplateAction action = new SaveTemplateAction(this);
return PlanimetryVisuPanelBuilder.buildTopComponent(panel, action.buildButton(EbliComponentFactory.INSTANCE));
}
-
+
@Override
protected void runUnloadedHandler() {
updating = true;
@@ -442,14 +446,15 @@
bCalque.removePropertyChangeListener(BSelecteurCheckBox.PROP_USER_VISIBLE, this);
}
}
-
+
panel = null;
calcByName = null;
+ runOpenedAndZoomSet = false;
this.removeAll();
-
+
this.add(new JLabel(NbBundle.getMessage(ReportVisualTopComponent.class, "TopComponent.NoScenarioLoadedInformations")));
super.revalidate();
-
+
this.repaint();
updating = false;
}
@@ -476,7 +481,7 @@
}
}
VisuPanelLookupListener visuLookupListener;
-
+
@Override
protected void componentOpenedHandler() {
if (resultatVisuPanel == null) {
@@ -495,16 +500,16 @@
}
if (info != null) {
updateFrameName();
-
+
}
-
+
}
-
+
private class SelectedEMHsLookupListener implements LookupListener {
-
+
@Override
public void resultChanged(LookupEvent ev) {
-
+
if (panel == null || WindowManager.getDefault().getRegistry().getActivated() == ReportVisualTopComponent.this) {
return;
}
@@ -515,14 +520,14 @@
Collection<Long> uids = new ArrayList<Long>(allItems.size());
for (Long uid : allItems) {
uids.add(uid);
-
+
}
updating = true;
panel.setSelectedEMHFromUids(uids);
updating = false;
}
}
-
+
@Override
protected void componentClosedDefinitlyHandler() {
if (resultatVisuPanel != null) {
@@ -534,12 +539,12 @@
resultatEMHsSelected = null;
}
}
-
+
@Override
public void componentClosedTemporarily() {
super.componentClosedTemporarily();
}
-
+
void writeProperties(java.util.Properties p) {
// better to version settings since initial version as advocated at
// http://wiki.apidesign.org/wiki/PropertyFiles
@@ -547,16 +552,16 @@
// TODO store your settings
}
-
+
void readProperties(java.util.Properties p) {
// TODO read your settings according to their version
}
-
+
private class VisuChangerListener implements PropertyChangeListener, Observer {
-
+
public VisuChangerListener() {
}
-
+
@Override
public void update(Observable o, Object arg) {
if (!updating && "visible".equals(arg)) {
@@ -564,16 +569,16 @@
reportViewServiceContrat.changesDoneIn(ReportVisualTopComponent.this);
}
}
-
+
@Override
public void propertyChange(PropertyChangeEvent evt) {
-
+
if (panel == null) {
return;
}
if (evt.getSource() == panel.getCqLegend() && (!editable || ignoreProperties.contains(evt.getPropertyName()))) {
return;
-
+
}
if (updating) {
return;
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportExportHelper.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportExportHelper.java 2016-03-09 15:19:34 UTC (rev 9311)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportExportHelper.java 2016-03-09 15:22:09 UTC (rev 9312)
@@ -81,7 +81,8 @@
List<ResultatTimeKey> times = reportService.getTimeContent().getTimes();
ReportTimeChooser timeChooser = new ReportTimeChooser(times, reportService.getReportTimeFormatter().getResulatKeyTempsSimuToStringTransformer());
pn.add(timeChooser.getPanel());
- final CtuluFileChooser fileChooser = new CtuluFileChooserWriter(CtuluUIForNetbeans.DEFAULT, Arrays.<CtuluWriter>asList(new CtuluTableCsvWriter()));
+ final CtuluFileChooser fileChooser = new CtuluFileChooserWriter(CtuluUIForNetbeans.DEFAULT, Arrays.
+ <CtuluWriter>asList(new CtuluTableCsvWriter()));
final CtuluFileChooserPanel fileChooserPanel = new CtuluFileChooserPanel() {
@Override
protected CtuluFileChooser createFileChooser() {
@@ -93,7 +94,8 @@
pnSouth.add(fileChooserPanel);
pn.add(pnSouth, BorderLayout.SOUTH);
pn.setBorder(BuBorders.EMPTY3333);
- final DialogDescriptor dialogDescriptor = new DialogDescriptor(pn, NbBundle.getMessage(ReportExportHelper.class, "Export.DialogTitle"), true, new Object[]{NotifyDescriptor.OK_OPTION, NotifyDescriptor.CANCEL_OPTION},
+ final DialogDescriptor dialogDescriptor = new DialogDescriptor(pn, NbBundle.getMessage(ReportExportHelper.class, "Export.DialogTitle"), true,
+ new Object[]{NotifyDescriptor.OK_OPTION, NotifyDescriptor.CANCEL_OPTION},
NotifyDescriptor.OK_OPTION,
DialogDescriptor.DEFAULT_ALIGN,
HelpCtx.DEFAULT_HELP,
@@ -106,7 +108,7 @@
listener.setNode(node);
listener.setTimeChooser(timeChooser);
dialogDescriptor.setButtonListener(listener);
- SysdocUrlBuilder.installDialogHelpCtx(dialogDescriptor, "exporterResultats", PerspectiveEnum.REPORT,false);
+ SysdocUrlBuilder.installDialogHelpCtx(dialogDescriptor, "exporterResultats", PerspectiveEnum.REPORT, false);
final Dialog dialog = DialogDisplayer.getDefault().createDialog(dialogDescriptor);
listener.setDialog((JDialog) dialog);
dialog.pack();
@@ -199,18 +201,24 @@
}
dialog.dispose();
- SwingWorker<Boolean, Object> worker = new CrueSwingWorker<Boolean>(NbBundle.getMessage(ReportExportHelper.class,
+ final CrueSwingWorker<Boolean> worker = new CrueSwingWorker<Boolean>(NbBundle.getMessage(ReportExportHelper.class,
"Export.Task.Name")) {
@Override
protected Boolean doProcess() throws Exception {
ReportExportWriter writer = new ReportExportWriter();
- writer.write(fileWithExt, selected, contentByEMH, reportService.getReportTimeFormatter());
- return Boolean.TRUE;
+ return writer.write(fileWithExt, selected, contentByEMH, reportService.getReportTimeFormatter());
}
@Override
protected void done(Boolean res) {
- DialogHelper.showNotifyOperationTermine(NbBundle.getMessage(ReportExportHelper.class, "Export.OperationFinish", fileChooserPanel.getFileWithExt().getAbsolutePath()));
+ if (Boolean.TRUE.equals(res)) {
+ DialogHelper.showNotifyOperationTermine(NbBundle.getMessage(ReportExportHelper.class, "Export.OperationFinish", fileChooserPanel.
+ getFileWithExt().getAbsolutePath()));
+ } else {
+ DialogHelper.showError(NbBundle.getMessage(ReportExportHelper.class, "Export.DialogTitle"), org.openide.util.NbBundle.getMessage(
+ ReportExportHelper.class, "Exportg.OperationFailed",
+ fileChooserPanel.getFileWithExt().getAbsolutePath()));
+ }
}
};
worker.execute();
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportExportWriter.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportExportWriter.java 2016-03-09 15:19:34 UTC (rev 9311)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/export/ReportExportWriter.java 2016-03-09 15:22:09 UTC (rev 9312)
@@ -5,6 +5,7 @@
import com.Ostermiller.util.CSVPrinter;
import java.io.File;
+import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.List;
@@ -35,9 +36,10 @@
public ReportExportWriter() {
}
- public void write(File f, List<ResultatTimeKey> times, List<ReportExportContentByEMH> content, ReportTimeFormatter timeFormatter) {
+ public boolean write(File f, List<ResultatTimeKey> times, List<ReportExportContentByEMH> content, ReportTimeFormatter timeFormatter) {
CSVPrinter writer = null;
ReportRunKey runKey = reportResultProviderService.getReportService().getRunCourant().getRunKey();
+ boolean ok = false;
try {
writer = new CSVPrinter(new FileOutputStream(f));
writer.changeQuote('"');
@@ -68,12 +70,17 @@
for (String string : variables) {
PropertyNature variable = reportResultProviderService.getPropertyNature(string);
ReportVariableKey createVariableKey = reportResultProviderService.createVariableKey(string);
- Double value = reportResultProviderService.getValue(resultatKey, new ReportRunVariableKey(runKey, createVariableKey), reportExportContentByEMH.emh.getNom());
- writer.write(TransformerEMHHelper.formatFromNature(variable, value, reportResultProviderService.getReportService().getCcm(), DecimalFormatEpsilonEnum.COMPARISON));
+ Double value = reportResultProviderService.getValue(resultatKey, new ReportRunVariableKey(runKey, createVariableKey),
+ reportExportContentByEMH.emh.getNom());
+ writer.write(TransformerEMHHelper.formatFromNature(variable, value, reportResultProviderService.getReportService().getCcm(),
+ DecimalFormatEpsilonEnum.COMPARISON));
}
}
writer.writeln();
+ ok = true;
}
+ } catch (FileNotFoundException ex) {
+
} catch (IOException ex) {
Exceptions.printStackTrace(ex);
} finally {
@@ -85,6 +92,7 @@
}
}
}
+ return ok;
}
}
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalCourbesUiResController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalCourbesUiResController.java 2016-03-09 15:19:34 UTC (rev 9311)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalCourbesUiResController.java 2016-03-09 15:22:09 UTC (rev 9312)
@@ -10,6 +10,7 @@
import org.fudaa.ebli.courbe.EGCourbe;
import org.fudaa.ebli.courbe.EGTableAction;
import org.fudaa.ebli.courbe.EGTableGraphePanel;
+import org.fudaa.fudaa.crue.common.helper.CtuluUIForNetbeans;
import org.fudaa.fudaa.crue.loi.common.LoiConstanteCourbeModel;
import org.fudaa.fudaa.crue.loi.res.CourbesUiResController;
import org.openide.util.NbBundle;
@@ -19,9 +20,10 @@
* @author Frederic Deniger
*/
public final class ReportLongitudinalCourbesUiResController extends CourbesUiResController {
-
+
public ReportLongitudinalCourbesUiResController() {
EGTableAction tableAction = (EGTableAction) getActions("TABLE").get(0);
+ tableAction.setUi(CtuluUIForNetbeans.DEFAULT);
tableAction.setAddOptions(false);
tableAction.setAddCheckbox(false);
tableAction.setShowColumnToExport(false);
@@ -30,34 +32,34 @@
setUseVariableForAxeH(true);
getGraphe().setExportDataBuilder(new ReportLongitudinalExportDataBuilder());
}
-
+
@Override
protected AbstractTableModel createTableModel() {
return new ReportLongitudinalTableModel(getTableGraphePanel());
}
-
+
@Override
protected void configureTablePanel() {
super.configureTablePanel();
tableGraphePanel.getTable().getColumnModel().getColumn(0).setCellRenderer(new CtuluCellTextRenderer(...
[truncated message content] |
|
From: <de...@us...> - 2016-03-15 22:22:09
|
Revision: 9314
http://sourceforge.net/p/fudaa/svn/9314
Author: deniger
Date: 2016-03-15 22:22:06 +0000 (Tue, 15 Mar 2016)
Log Message:
-----------
CRUE-634
CRUE-692
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/DecimalFormatEpsilonEnum.java
trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/PropertyNature.java
trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/OptionsEnum.java
trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/DialogHelper.java
trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/AbstractLoiCourbeModel.java
trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/loiff/LoiTimeExportDecorator.java
Modified: trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/DecimalFormatEpsilonEnum.java
===================================================================
--- trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/DecimalFormatEpsilonEnum.java 2016-03-14 14:59:20 UTC (rev 9313)
+++ trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/DecimalFormatEpsilonEnum.java 2016-03-15 22:22:06 UTC (rev 9314)
@@ -8,7 +8,6 @@
* @author Frederic Deniger
*/
public enum DecimalFormatEpsilonEnum {
-
PRESENTATION,
COMPARISON;
}
Modified: trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/PropertyNature.java
===================================================================
--- trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/PropertyNature.java 2016-03-14 14:59:20 UTC (rev 9313)
+++ trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/PropertyNature.java 2016-03-15 22:22:06 UTC (rev 9314)
@@ -75,8 +75,14 @@
}
public String format(double value, DecimalFormatEpsilonEnum type) {
- NumberFormat formatter = getFormatter(type);
- return formatter == null ? Double.toString(value) : formatter.format(value);
+ try {
+ NumberFormat formatter = getFormatter(type);
+ return formatter == null ? Double.toString(value) : formatter.format(value);
+ } catch (Exception e) {
+ e.printStackTrace();
+ System.err.println("yes");
+ }
+ return null;
}
public String format(Number value, DecimalFormatEpsilonEnum type) {
Modified: trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/OptionsEnum.java
===================================================================
--- trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/OptionsEnum.java 2016-03-14 14:59:20 UTC (rev 9313)
+++ trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/OptionsEnum.java 2016-03-15 22:22:06 UTC (rev 9314)
@@ -4,7 +4,7 @@
/**
*
- * @author deniger ( genesis)
+ * @author deniger
*/
public enum OptionsEnum {
Modified: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/DialogHelper.java
===================================================================
--- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/DialogHelper.java 2016-03-14 14:59:20 UTC (rev 9313)
+++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/DialogHelper.java 2016-03-15 22:22:06 UTC (rev 9314)
@@ -153,7 +153,8 @@
NotifyDescriptor nd = new NotifyDescriptor.Message(msg, NotifyDescriptor.ERROR_MESSAGE);
nd.setTitle(title);
DialogDisplayer.getDefault().notify(nd);
- NotificationDisplayer.getDefault().notify(title, CrueIconsProvider.getIcon("org/fudaa/fudaa/crue/common/icons/erreur-bloquante.png"), panelInfo,
+ NotificationDisplayer.getDefault().notify(title, CrueIconsProvider.getIcon("org/fudaa/fudaa/crue/common/icons/erreur-bloquante.png"),
+ panelInfo == null ? title : panelInfo,
null, NotificationDisplayer.Priority.SILENT);
}
Modified: trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/AbstractLoiCourbeModel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/AbstractLoiCourbeModel.java 2016-03-14 14:59:20 UTC (rev 9313)
+++ trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/common/AbstractLoiCourbeModel.java 2016-03-15 22:22:06 UTC (rev 9314)
@@ -452,6 +452,10 @@
return lines.get(idx).ptEvolutionFF;
}
+ public boolean isDefined(int idx) {
+ return idx >= 0 && idx < lines.size();
+ }
+
protected LoiLine getLoiLine(int idx) {
return lines.get(idx);
}
Modified: trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/loiff/LoiTimeExportDecorator.java
===================================================================
--- trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/loiff/LoiTimeExportDecorator.java 2016-03-14 14:59:20 UTC (rev 9313)
+++ trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/loiff/LoiTimeExportDecorator.java 2016-03-15 22:22:06 UTC (rev 9314)
@@ -42,6 +42,9 @@
if (col == 1 && table.getModel() instanceof DefaultLoiTableModel) {
DefaultLoiTableModel model = (DefaultLoiTableModel) table.getModel();
AbstractLoiCourbeModel loiCourbeModel = (AbstractLoiCourbeModel) model.getCourbe().getModel();
+ if (!loiCourbeModel.isDefined(row)) {
+ return null;
+ }
ItemVariable varAbscisse = loiCourbeModel.getConfigLoi().getVarAbscisse();
if (varAbscisse.getNature().isDate() || varAbscisse.getNature().isDuration()) {
return varAbscisse.format(loiCourbeModel.getX(row), DecimalFormatEpsilonEnum.COMPARISON);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-03-21 22:25:02
|
Revision: 9316
http://sourceforge.net/p/fudaa/svn/9316
Author: deniger
Date: 2016-03-21 22:24:59 +0000 (Mon, 21 Mar 2016)
Log Message:
-----------
CRUE-634
CRUE-692
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/CrueConfigMetier.java
trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/GlobalOptionsManager.java
trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/OptionsEnum.java
trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/SiteConfiguration.java
trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/UserConfiguration.java
trunk/soft/fudaa-crue/crue-core/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties
Added Paths:
-----------
trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/Crue9DecimalFormat.java
trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/Crue9DecimalFormatter.java
trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/Crue9DecimalFormatBuilder.java
trunk/soft/fudaa-crue/crue-config/src/test/java/org/fudaa/dodico/crue/config/ccm/Crue9DecimalFormatterTest.java
trunk/soft/fudaa-crue/crue-config/src/test/java/org/fudaa/dodico/crue/projet/
trunk/soft/fudaa-crue/crue-config/src/test/java/org/fudaa/dodico/crue/projet/conf/
trunk/soft/fudaa-crue/crue-config/src/test/java/org/fudaa/dodico/crue/projet/conf/Crue9DecimalFormatBuilderTest.java
Property Changed:
----------------
trunk/soft/fudaa-crue/crue-config/
Index: trunk/soft/fudaa-crue/crue-config
===================================================================
--- trunk/soft/fudaa-crue/crue-config 2016-03-20 22:10:48 UTC (rev 9315)
+++ trunk/soft/fudaa-crue/crue-config 2016-03-21 22:24:59 UTC (rev 9316)
Property changes on: trunk/soft/fudaa-crue/crue-config
___________________________________________________________________
Modified: svn:ignore
## -1 +1,2 ##
target
+nbproject
Added: trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/Crue9DecimalFormat.java
===================================================================
--- trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/Crue9DecimalFormat.java (rev 0)
+++ trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/Crue9DecimalFormat.java 2016-03-21 22:24:59 UTC (rev 9316)
@@ -0,0 +1,46 @@
+/*
+GPL 2
+ */
+package org.fudaa.dodico.crue.config.ccm;
+
+/**
+ *
+ * @author Frederic Deniger
+ */
+public class Crue9DecimalFormat {
+
+ public enum STATE {
+ ACTIVE, NON_ACTIVE;
+ }
+
+ private final int numberOfDigits;
+ private final STATE state;
+
+ public static Crue9DecimalFormat getDefault() {
+ return new Crue9DecimalFormat(0, STATE.NON_ACTIVE);
+ }
+
+ public Crue9DecimalFormat(int numberOfDigits, STATE state) {
+ this.numberOfDigits = numberOfDigits;
+ this.state = state;
+ }
+
+ public boolean isInactive() {
+ return STATE.NON_ACTIVE.equals(this.state) || numberOfDigits <= 0;
+ }
+ public boolean isActive() {
+ return !isInactive();
+ }
+
+ public int getNumberOfDigits() {
+ return numberOfDigits;
+ }
+
+ /**
+ * @return si actif ou non.
+ */
+ public STATE getState() {
+ return state;
+ }
+
+}
Added: trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/Crue9DecimalFormatter.java
===================================================================
--- trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/Crue9DecimalFormatter.java (rev 0)
+++ trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/Crue9DecimalFormatter.java 2016-03-21 22:24:59 UTC (rev 9316)
@@ -0,0 +1,31 @@
+/*
+GPL 2
+ */
+package org.fudaa.dodico.crue.config.ccm;
+
+import org.fudaa.ctulu.CtuluNumberFormatFortran;
+
+/**
+ *
+ * @author Frederic Deniger
+ */
+public class Crue9DecimalFormatter {
+
+ private final CtuluNumberFormatFortran formatter;
+
+ public Crue9DecimalFormatter(Crue9DecimalFormat format) {
+ if (format != null && format.isActive()) {
+ formatter = new CtuluNumberFormatFortran(format.getNumberOfDigits());
+ } else {
+ formatter = null;
+ }
+ }
+
+ public String format(double in) {
+ if (formatter == null) {
+ return Double.toString(in);
+ }
+ return formatter.format(in);
+ }
+
+}
Modified: trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/CrueConfigMetier.java
===================================================================
--- trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/CrueConfigMetier.java 2016-03-20 22:10:48 UTC (rev 9315)
+++ trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/config/ccm/CrueConfigMetier.java 2016-03-21 22:24:59 UTC (rev 9316)
@@ -29,18 +29,28 @@
final Map<String, PropertyNature> propNature;
final Map<String, PropertyNature> propEnum;
CrueConfigMetierLitNomme litNomme;
+ Crue9DecimalFormat crue9DecimalFormat = Crue9DecimalFormat.getDefault();
protected CrueConfigMetier(final Map<String, PropertyNature> propNature, final Map<String, PropertyNature> propEnums) {
super();
this.propNature = propNature;
this.propEnum = propEnums;
- this.litNomme = new CrueConfigMetierLitNomme(propEnums.get(CrueConfigMetierConstants.ENUM_LIT_NOMME), propEnums.get(CrueConfigMetierConstants.ENUM_ETIQUETTE));
+ this.litNomme = new CrueConfigMetierLitNomme(propEnums.get(CrueConfigMetierConstants.ENUM_LIT_NOMME), propEnums.get(
+ CrueConfigMetierConstants.ENUM_ETIQUETTE));
}
public CrueConfigMetierLitNomme getLitNomme() {
return litNomme;
}
+ public void setCrue9DecimalFormat(Crue9DecimalFormat crue9DecimalFormat) {
+ this.crue9DecimalFormat = crue9DecimalFormat;
+ }
+
+ public Crue9DecimalFormat getCrue9DecimalFormat() {
+ return crue9DecimalFormat;
+ }
+
/**
*
* @return liste des types de lois pouvant être créées par l'utilisateur
@@ -269,7 +279,8 @@
PropertyNature nature = prop.getNature();
if (!nature.isEnum() && !doneNature.contains(nature.getNom())) {
doneNature.add(nature.getNom());
- nature.setFormat(formatBuilder.getFormatter(nature, DecimalFormatEpsilonEnum.PRESENTATION), formatBuilder.getFormatter(nature, DecimalFormatEpsilonEnum.COMPARISON));
+ nature.setFormat(formatBuilder.getFormatter(nature, DecimalFormatEpsilonEnum.PRESENTATION), formatBuilder.getFormatter(nature,
+ DecimalFormatEpsilonEnum.COMPARISON));
}
@@ -284,7 +295,8 @@
final PropertyNature nature = prop.getNature();
if (!nature.isEnum() && !doneNature.contains(nature.getNom())) {
doneNature.add(nature.getNom());
- nature.setFormat(formatBuilder.getFormatter(nature, DecimalFormatEpsilonEnum.PRESENTATION), formatBuilder.getFormatter(nature, DecimalFormatEpsilonEnum.COMPARISON));
+ nature.setFormat(formatBuilder.getFormatter(nature, DecimalFormatEpsilonEnum.PRESENTATION), formatBuilder.getFormatter(nature,
+ DecimalFormatEpsilonEnum.COMPARISON));
}
}
Added: trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/Crue9DecimalFormatBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/Crue9DecimalFormatBuilder.java (rev 0)
+++ trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/Crue9DecimalFormatBuilder.java 2016-03-21 22:24:59 UTC (rev 9316)
@@ -0,0 +1,45 @@
+/*
+GPL 2
+ */
+package org.fudaa.dodico.crue.projet.conf;
+
+import java.util.List;
+import org.fudaa.dodico.crue.config.ccm.Crue9DecimalFormat;
+import org.fudaa.dodico.crue.config.ccm.CrueConfigMetier;
+
+/**
+ *
+ * @author Frederic Deniger
+ */
+public class Crue9DecimalFormatBuilder {
+
+ int read(SiteConfiguration in) {
+ final List<SiteOption> options = in.getOptions();
+ if (options == null) {
+ return -1;
+ }
+ for (SiteOption option : options) {
+ if (OptionsEnum.NB_EXPORT_CRUE9_SIGNIFICANT_FIGURES.getId().equals(option.getId())) {
+ try {
+ return Integer.parseInt(option.getValeur());
+ } catch (NumberFormatException numberFormatException) {
+ }
+ }
+ }
+
+ return -1;
+ }
+
+ public Crue9DecimalFormat intialize(Configuration configuration, CrueConfigMetier ccm) {
+ int i = read(configuration.getSite());
+ Crue9DecimalFormat fmt = null;
+ if (i < 0) {
+ fmt = Crue9DecimalFormat.getDefault();
+ } else {
+ fmt = new Crue9DecimalFormat(i, Crue9DecimalFormat.STATE.ACTIVE);
+ }
+ ccm.setCrue9DecimalFormat(fmt);
+ return fmt;
+ }
+
+}
Modified: trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/GlobalOptionsManager.java
===================================================================
--- trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/GlobalOptionsManager.java 2016-03-20 22:10:48 UTC (rev 9315)
+++ trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/GlobalOptionsManager.java 2016-03-21 22:24:59 UTC (rev 9316)
@@ -128,7 +128,7 @@
OptionsEnum[] values = OptionsEnum.values();
for (OptionsEnum optionsEnum : values) {
enumById.put(optionsEnum.getId(), optionsEnum);
- }
+ }
}
public OptionsEnum getOptionEnum(Option option) {
@@ -164,14 +164,14 @@
return option;
}
- public SiteAide getAideOption() {
+ public SiteAide getAideOption() {
return aide;
}
-
+
public void setAideOption(SiteAide aide) {
- this.aide = aide;
+ this.aide = aide;
}
-
+
protected CtuluLogLevel getLevel(boolean useFatal) {
return useFatal ? CtuluLogLevel.ERROR : CtuluLogLevel.WARNING;
}
@@ -251,10 +251,11 @@
Map<OptionsEnum, Option> siteReadOnlyOptionMap = build(siteReadOnlyOptions, false);
Map<OptionsEnum, Option> siteAllOptionMap = build(siteModifiableByUserOptions.getOptions(), false);
siteAllOptionMap.putAll(siteReadOnlyOptionMap);
- if(siteConfiguration.getSite().getAide() != null)
- setAideOption(siteConfiguration.getSite().getAide());
- else
- siteLog.addRecord(getLevel(true), "conf.undefinedHelpConfiguration", "<SiteAide>");
+ if (siteConfiguration.getSite().getAide() != null) {
+ setAideOption(siteConfiguration.getSite().getAide());
+ } else {
+ siteLog.addRecord(getLevel(true), "conf.undefinedHelpConfiguration", "<SiteAide>");
+ }
validIsAllSetKnown(siteLog, siteAllOptionMap, true);//toutes les options doivent être définies
validSiteOptions(siteLog, siteReadOnlyOptions, siteReadOnlyOptionMap);
validValuesOfOption(siteLog, siteAllOptionMap, siteReadOnlyOptionMap);
Modified: trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/OptionsEnum.java
===================================================================
--- trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/OptionsEnum.java 2016-03-20 22:10:48 UTC (rev 9315)
+++ trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/OptionsEnum.java 2016-03-21 22:24:59 UTC (rev 9316)
@@ -11,11 +11,13 @@
AVAILABLE_LANGUAGE("availableLanguage", String.class, "fr_FR", true),
USER_LANGUAGE("userLanguage", String.class, "fr_FR", true, new OptionValidatorLanguage("userLanguage")),
UI_UPDATE_FREQ("uiUpdateProgressFrequence", Double.class, "0.2", true, new OptionValidatorMinDouble(Double.valueOf(0.1),
- "uiUpdateProgressFrequence")),
+ "uiUpdateProgressFrequence")),
MAX_COMPARAISON_ITEM("maxComparisonItemsDisplayed", Integer.class, "500", true, new OptionValidatorMinDouble(Double.valueOf(1),
- "maxComparisonItemsDisplayed")),
+ "maxComparisonItemsDisplayed")),
MAX_RESULTAT_DIFF_BY_EMH("maxComparisonResultsByEMH", Integer.class, "100", true, new OptionValidatorMinDouble(Double.valueOf(1),
- "maxComparisonResultsByEMH")),
+ "maxComparisonResultsByEMH")),
+ NB_EXPORT_CRUE9_SIGNIFICANT_FIGURES("nbExportCrue9SignificantFigures", Integer.class, "7", true, new OptionValidatorMinDouble(Double.valueOf(-1),
+ "nbExportCrue9SignificantFigures")),
MAX_LOG_ITEM("maxLogLinesRead", Integer.class, "500", true, new OptionValidatorMinDouble(Double.valueOf(1), "maxLogLinesRead")),
EDITOR("externalEditor", File.class, null, true),
CRUE9_EXE("crue9Exe", File.class, null, true),
Modified: trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/SiteConfiguration.java
===================================================================
--- trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/SiteConfiguration.java 2016-03-20 22:10:48 UTC (rev 9315)
+++ trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/SiteConfiguration.java 2016-03-21 22:24:59 UTC (rev 9316)
@@ -1,7 +1,3 @@
-/*
- * To change this template, choose Tools | Templates
- * and open the template in the editor.
- */
package org.fudaa.dodico.crue.projet.conf;
import java.util.List;
Modified: trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/UserConfiguration.java
===================================================================
--- trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/UserConfiguration.java 2016-03-20 22:10:48 UTC (rev 9315)
+++ trunk/soft/fudaa-crue/crue-config/src/main/java/org/fudaa/dodico/crue/projet/conf/UserConfiguration.java 2016-03-21 22:24:59 UTC (rev 9316)
@@ -1,7 +1,3 @@
-/*
- * To change this template, choose Tools | Templates
- * and open the template in the editor.
- */
package org.fudaa.dodico.crue.projet.conf;
import java.util.ArrayList;
@@ -13,7 +9,7 @@
*/
public class UserConfiguration {
- private Collection<UserOption> options = new ArrayList<UserOption>();
+ private Collection<UserOption> options = new ArrayList<>();
public Collection<UserOption> getOptions() {
return options;
Added: trunk/soft/fudaa-crue/crue-config/src/test/java/org/fudaa/dodico/crue/config/ccm/Crue9DecimalFormatterTest.java
===================================================================
--- trunk/soft/fudaa-crue/crue-config/src/test/java/org/fudaa/dodico/crue/config/ccm/Crue9DecimalFormatterTest.java (rev 0)
+++ trunk/soft/fudaa-crue/crue-config/src/test/java/org/fudaa/dodico/crue/config/ccm/Crue9DecimalFormatterTest.java 2016-03-21 22:24:59 UTC (rev 9316)
@@ -0,0 +1,27 @@
+/*
+GPL 2
+ */
+package org.fudaa.dodico.crue.config.ccm;
+
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+/**
+ *
+ * @author Frederic Deniger
+ */
+public class Crue9DecimalFormatterTest {
+
+ public Crue9DecimalFormatterTest() {
+ }
+
+ @Test
+ public void testFormat() {
+ Crue9DecimalFormatter formatter = new Crue9DecimalFormatter(new Crue9DecimalFormat(8, Crue9DecimalFormat.STATE.ACTIVE));
+ assertEquals("1.23", formatter.format(1.23));
+ assertEquals("5.0E-9", formatter.format(0.000000005));
+ assertEquals(".1234568", formatter.format(0.12345678));
+ assertEquals("1.2346E8", formatter.format(123456789));
+ }
+
+}
Added: trunk/soft/fudaa-crue/crue-config/src/test/java/org/fudaa/dodico/crue/projet/conf/Crue9DecimalFormatBuilderTest.java
===================================================================
--- trunk/soft/fudaa-crue/crue-config/src/test/java/org/fudaa/dodico/crue/projet/conf/Crue9DecimalFormatBuilderTest.java (rev 0)
+++ trunk/soft/fudaa-crue/crue-config/src/test/java/org/fudaa/dodico/crue/projet/conf/Crue9DecimalFormatBuilderTest.java 2016-03-21 22:24:59 UTC (rev 9316)
@@ -0,0 +1,41 @@
+/*
+GPL 2
+ */
+package org.fudaa.dodico.crue.projet.conf;
+
+import java.util.Arrays;
+import org.fudaa.dodico.crue.config.ccm.Crue9DecimalFormat;
+import org.fudaa.dodico.crue.config.ccm.CrueConfigMetier;
+import org.fudaa.dodico.crue.config.ccm.CrueConfigMetierLoaderDefaultTest;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+/**
+ *
+ * @author Frederic Deniger
+ */
+public class Crue9DecimalFormatBuilderTest {
+
+ public Crue9DecimalFormatBuilderTest() {
+ }
+
+ @Test
+ public void testIntialize() {
+ Configuration configuration = new Configuration();
+ SiteConfiguration siteConfiguration = new SiteConfiguration();
+ configuration.setSite(siteConfiguration);
+ Crue9DecimalFormatBuilder builder = new Crue9DecimalFormatBuilder();
+ CrueConfigMetier ccm = CrueConfigMetierLoaderDefaultTest.DEFAULT;
+ builder.intialize(configuration, ccm);
+ assertEquals(Crue9DecimalFormat.STATE.NON_ACTIVE, ccm.getCrue9DecimalFormat().getState());
+ assertEquals(0, ccm.getCrue9DecimalFormat().getNumberOfDigits());
+
+ SiteOption option = new SiteOption(OptionsEnum.NB_EXPORT_CRUE9_SIGNIFICANT_FIGURES.getId(), "8", "", true);
+ siteConfiguration.setOptions(Arrays.asList(option));
+ builder.intialize(configuration, ccm);
+ assertEquals(Crue9DecimalFormat.STATE.ACTIVE, ccm.getCrue9DecimalFormat().getState());
+ assertEquals(8, ccm.getCrue9DecimalFormat().getNumberOfDigits());
+
+ }
+
+}
Modified: trunk/soft/fudaa-crue/crue-core/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties
===================================================================
--- trunk/soft/fudaa-crue/crue-core/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties 2016-03-20 22:10:48 UTC (rev 9315)
+++ trunk/soft/fudaa-crue/crue-core/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties 2016-03-21 22:24:59 UTC (rev 9316)
@@ -632,6 +632,9 @@
option.maxLogLinesRead.name=Nombre maximal de lignes lues dans un CR
option.maxLogLinesRead.comment=La lecture d'un CR est limit\u00e9 aux n premi\u00e8res lignes
+option.nbExportCrue9SignificantFigures.name=Nombre de chiffres significatifs export Crue 9
+option.nbExportCrue9SignificantFigures.comment=D\u00e9finit le nombre de chiffres significatifs pour les export Crue9
+
maxReadLineReached=... (la lecture du CR a \u00e9t\u00e9 stopp\u00e9e apr\u00e8s {0} lignes)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-03-21 22:25:15
|
Revision: 9317
http://sourceforge.net/p/fudaa/svn/9317
Author: deniger
Date: 2016-03-21 22:25:12 +0000 (Mon, 21 Mar 2016)
Log Message:
-----------
CRUE-634
CRUE-692
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-io/src/main/java/org/fudaa/dodico/crue/io/neuf/DCFileWriter.java
trunk/soft/fudaa-crue/crue-io/src/test/resources/FudaaCrue_Site_officiel.xml
trunk/soft/fudaa-crue/crue-otfa/src/main/java/org/fudaa/dodico/crue/projet/otfa/OtfaBatch.java
Modified: trunk/soft/fudaa-crue/crue-io/src/main/java/org/fudaa/dodico/crue/io/neuf/DCFileWriter.java
===================================================================
--- trunk/soft/fudaa-crue/crue-io/src/main/java/org/fudaa/dodico/crue/io/neuf/DCFileWriter.java 2016-03-21 22:24:59 UTC (rev 9316)
+++ trunk/soft/fudaa-crue/crue-io/src/main/java/org/fudaa/dodico/crue/io/neuf/DCFileWriter.java 2016-03-21 22:25:12 UTC (rev 9317)
@@ -18,6 +18,7 @@
import org.fudaa.dodico.crue.comparaison.tester.EqualsTester;
import org.fudaa.dodico.crue.comparaison.tester.FactoryEqualsTester;
import org.fudaa.dodico.crue.comparaison.tester.TesterHelper;
+import org.fudaa.dodico.crue.config.ccm.Crue9DecimalFormatter;
import org.fudaa.dodico.crue.config.ccm.DecimalFormatEpsilonEnum;
import org.fudaa.dodico.crue.config.ccm.ItemVariable;
import org.fudaa.dodico.crue.config.ccm.PropertyEpsilon;
@@ -99,12 +100,12 @@
* Correspondance EnumSensOrifice<->String
*/
private SingleValueConverter enumSensOrificeMapCrue9;
-
-
+
/**
* Formatteur utilisé pour écrire des colonnes float de taille fixe de x caractères
*/
- CtuluNumberFormatFortran formatter = new CtuluNumberFormatFortran(XZ_COLUMNS_LENGTH-1);
+ CtuluNumberFormatFortran formatterFF = new CtuluNumberFormatFortran(XZ_COLUMNS_LENGTH - 1);
+ Crue9DecimalFormatter formatterXtAndZ;
@Override
protected void internalWrite(final CrueIOResu o) {
@@ -113,6 +114,7 @@
initWriter();
final CrueData data = ((CrueIOResu<CrueData>) o).getMetier();
+ formatterXtAndZ = new Crue9DecimalFormatter(data.getCrueConfigMetier().getCrue9DecimalFormat());
try {
// cf DParametresSipor.java
// -- on commence par l'écriture des titres sur 5 lignes --//
@@ -320,7 +322,6 @@
final PropertyEpsilon eps = metier.getCrueConfigMetier().getConfLoi().get(EnumTypeLoi.LoiZFK).getVarOrdonnee().getEpsilon();
// STRIREF(o) "nom_strickler" k (nom du strickler et valeur associée)
-
for (final DonFrt frt : metier.getFrottements().getListFrt()) {
String pref = null;
@@ -591,7 +592,6 @@
}
// -- on ecrit les données --//
-
// -- LIMITEJ--//
// LIMITEJ 11 11 13 18 64 81 81 81
fortranWriter.stringField(0, CrueIODico.LIMITEJ);
@@ -655,7 +655,6 @@
// LIT MAJG 6
// LIT STOCKD 1
// LIT STOCKG 7
-
List<String> keySet = new ArrayList<String>(mapNomsLits.keySet());
Collections.sort(keySet);
for (final String key : keySet) {
@@ -841,8 +840,8 @@
fortranWriter.stringField(indiceFortran++, carteToUse);
}
// on inverse tout le temps dans dc
- fortranWriter.stringField(indiceFortran++, fortranWriter.addSpacesBefore(XZ_COLUMNS_LENGTH,formatter.format(pt.getOrdonnee())));
- fortranWriter.stringField(indiceFortran++, fortranWriter.addSpacesBefore(XZ_COLUMNS_LENGTH,formatter.format(pt.getAbscisse())));
+ fortranWriter.stringField(indiceFortran++, fortranWriter.addSpacesBefore(XZ_COLUMNS_LENGTH, formatterFF.format(pt.getOrdonnee())));
+ fortranWriter.stringField(indiceFortran++, fortranWriter.addSpacesBefore(XZ_COLUMNS_LENGTH, formatterFF.format(pt.getAbscisse())));
cptCouples++;
}
@@ -865,9 +864,9 @@
final int[] createFmtXZ = createFmtXZ();
for (final PtProfil pt : liste) {
-
- fortranWriter.stringField(indiceFortran++, fortranWriter.addSpacesBefore(XZ_COLUMNS_LENGTH,formatter.format(pt.getXt())));
- fortranWriter.stringField(indiceFortran++, fortranWriter.addSpacesBefore(XZ_COLUMNS_LENGTH,formatter.format(pt.getZ())));
+
+ fortranWriter.stringField(indiceFortran++, fortranWriter.addSpacesBefore(XZ_COLUMNS_LENGTH, formatterXtAndZ.format(pt.getXt())));
+ fortranWriter.stringField(indiceFortran++, fortranWriter.addSpacesBefore(XZ_COLUMNS_LENGTH, formatterXtAndZ.format(pt.getZ())));
cptCouples++;
if (cptCouples >= nbMaxCouples) {
indiceFortran = 0;
@@ -980,7 +979,6 @@
writeCartesProfilsDISTANCE(listeSections, CrueIODico.BRANCHE_PROF, true, true, true, true);
// WARNING DISTMAX pas a prendre en compte dans V0.
-
// -- ecriture de RUIS --//
if (branche.getDCSP() != null) {
for (final DonCalcSansPrt dcsp : branche.getDCSP()) {
@@ -1001,7 +999,6 @@
final DonPrtGeoBrancheSaintVenant geoStVenant = (DonPrtGeoBrancheSaintVenant) geo;
// ex SINUO 600.0 500.0 (si LongMineur = 600 m et LongMajeur = 500 m) :
-
final double coeff = geoStVenant.getCoefSinuo();// longMineur / longMajeur;
final double max = listeSections.get(listeSections.size() - 1).getXp();
Modified: trunk/soft/fudaa-crue/crue-io/src/test/resources/FudaaCrue_Site_officiel.xml
===================================================================
--- trunk/soft/fudaa-crue/crue-io/src/test/resources/FudaaCrue_Site_officiel.xml 2016-03-21 22:24:59 UTC (rev 9316)
+++ trunk/soft/fudaa-crue/crue-io/src/test/resources/FudaaCrue_Site_officiel.xml 2016-03-21 22:25:12 UTC (rev 9317)
@@ -26,6 +26,10 @@
<Commentaire>Commentaire de l'option SiteNom2.</Commentaire>
<Valeur>SiteValeur2</Valeur>
</SiteOption>
+ <SiteOption Nom="nbExportCrue9SignificantFigures" UserVisible="true">
+ <Commentaire></Commentaire>
+ <Valeur>2</Valeur>
+ </SiteOption>
</SiteOptions>
</Site>
<User>
Modified: trunk/soft/fudaa-crue/crue-otfa/src/main/java/org/fudaa/dodico/crue/projet/otfa/OtfaBatch.java
===================================================================
--- trunk/soft/fudaa-crue/crue-otfa/src/main/java/org/fudaa/dodico/crue/projet/otfa/OtfaBatch.java 2016-03-21 22:24:59 UTC (rev 9316)
+++ trunk/soft/fudaa-crue/crue-otfa/src/main/java/org/fudaa/dodico/crue/projet/otfa/OtfaBatch.java 2016-03-21 22:25:12 UTC (rev 9317)
@@ -22,6 +22,7 @@
import org.fudaa.dodico.crue.metier.CrueFileType;
import org.fudaa.dodico.crue.projet.calcul.CalculCrueRunnerManagerImpl;
import org.fudaa.dodico.crue.projet.conf.Configuration;
+import org.fudaa.dodico.crue.projet.conf.Crue9DecimalFormatBuilder;
import org.fudaa.dodico.crue.projet.conf.GlobalOptionsManager;
import org.fudaa.dodico.crue.projet.conf.OptionsEnum;
import org.fudaa.dodico.crue.projet.conf.UserConfiguration;
@@ -72,6 +73,8 @@
return null;
}
coeurConfig.loadCrueConfigMetier(load.getMetier());
+ Crue9DecimalFormatBuilder crue9DecimalFormatBuilder = new Crue9DecimalFormatBuilder();
+ crue9DecimalFormatBuilder.intialize(configuration, load.getMetier());
}
return coeurManager;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-03-21 22:26:49
|
Revision: 9318
http://sourceforge.net/p/fudaa/svn/9318
Author: deniger
Date: 2016-03-21 22:26:47 +0000 (Mon, 21 Mar 2016)
Log Message:
-----------
CRUE-634
CRUE-692
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-options/src/main/java/org/fudaa/fudaa/crue/options/services/ConfigurationManagerService.java
trunk/soft/fudaa-crue/ui-options/src/main/resources/FudaaCrue_Site.xml
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/sig/tracecasier/GGFilesDbfReader.java
trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/ConfigTest.java
Modified: trunk/soft/fudaa-crue/ui-options/src/main/java/org/fudaa/fudaa/crue/options/services/ConfigurationManagerService.java
===================================================================
--- trunk/soft/fudaa-crue/ui-options/src/main/java/org/fudaa/fudaa/crue/options/services/ConfigurationManagerService.java 2016-03-21 22:25:12 UTC (rev 9317)
+++ trunk/soft/fudaa-crue/ui-options/src/main/java/org/fudaa/fudaa/crue/options/services/ConfigurationManagerService.java 2016-03-21 22:26:47 UTC (rev 9318)
@@ -34,6 +34,7 @@
import org.fudaa.dodico.crue.io.conf.CrueEtudeDaoConfiguration;
import org.fudaa.dodico.crue.projet.ConfigurationReader;
import org.fudaa.dodico.crue.projet.conf.Configuration;
+import org.fudaa.dodico.crue.projet.conf.Crue9DecimalFormatBuilder;
import org.fudaa.dodico.crue.projet.conf.GlobalOptionsManager;
import org.fudaa.dodico.crue.projet.conf.OptionsEnum;
import org.fudaa.dodico.crue.projet.conf.UserConfiguration;
@@ -135,14 +136,14 @@
if (coeurManager != null) {
dynamicContent.remove(coeurManager);
}
- Configuration read = conf;
+ Configuration readConfiguration = conf;
if (conf == null) {
- read = read(installationService.getSiteConfigFile());
+ readConfiguration = read(installationService.getSiteConfigFile());
}
- if (read == null) {
+ if (readConfiguration == null) {
return;
}
- coeurManager = new CoeurManager(installationService.getSiteDir(), read.getSite().getCoeurs());
+ coeurManager = new CoeurManager(installationService.getSiteDir(), readConfiguration.getSite().getCoeurs());
CoeurManagerValidator validator = new CoeurManagerValidator();
CtuluLogGroup logGroup = new CtuluLogGroup(BusinessMessages.RESOURCE_BUNDLE);
@@ -166,6 +167,8 @@
isCoeurValid = false;
}
coeurConfig.loadCrueConfigMetier(load.getMetier());
+ Crue9DecimalFormatBuilder crue9DecimalFormatBuilder = new Crue9DecimalFormatBuilder();
+ crue9DecimalFormatBuilder.intialize(readConfiguration, load.getMetier());
}
}
if (parent != null) {
Modified: trunk/soft/fudaa-crue/ui-options/src/main/resources/FudaaCrue_Site.xml
===================================================================
--- trunk/soft/fudaa-crue/ui-options/src/main/resources/FudaaCrue_Site.xml 2016-03-21 22:25:12 UTC (rev 9317)
+++ trunk/soft/fudaa-crue/ui-options/src/main/resources/FudaaCrue_Site.xml 2016-03-21 22:26:47 UTC (rev 9318)
@@ -1,92 +1,96 @@
<Configuration>
- <Site>
- <Coeurs>
- <Coeur id="c10m9">
- <Commentaire>Coeur c10m9 le plus récent</Commentaire>
- <VersionGrammaire>1.2</VersionGrammaire>
- <CoeurParDefaut>false</CoeurParDefaut>
- <DossierCoeur>coeurs/c10m9</DossierCoeur>
- </Coeur>
- <Coeur id="c10m10">
- <Commentaire>Coeur c10m10 le plus récent</Commentaire>
- <VersionGrammaire>1.2</VersionGrammaire>
- <CoeurParDefaut>true</CoeurParDefaut>
- <DossierCoeur>coeurs/c10m10</DossierCoeur>
- </Coeur>
- <Coeur id="old_c10m10">
- <Commentaire>Coeur c10m10 précédent</Commentaire>
- <VersionGrammaire>1.2</VersionGrammaire>
- <CoeurParDefaut>false</CoeurParDefaut>
- <DossierCoeur>coeurs/old_c10m10</DossierCoeur>
- </Coeur>
- </Coeurs>
+ <Site>
+ <Coeurs>
+ <Coeur id="c10m9">
+ <Commentaire>Coeur c10m9 le plus récent</Commentaire>
+ <VersionGrammaire>1.2</VersionGrammaire>
+ <CoeurParDefaut>false</CoeurParDefaut>
+ <DossierCoeur>coeurs/c10m9</DossierCoeur>
+ </Coeur>
+ <Coeur id="c10m10">
+ <Commentaire>Coeur c10m10 le plus récent</Commentaire>
+ <VersionGrammaire>1.2</VersionGrammaire>
+ <CoeurParDefaut>true</CoeurParDefaut>
+ <DossierCoeur>coeurs/c10m10</DossierCoeur>
+ </Coeur>
+ <Coeur id="old_c10m10">
+ <Commentaire>Coeur c10m10 précédent</Commentaire>
+ <VersionGrammaire>1.2</VersionGrammaire>
+ <CoeurParDefaut>false</CoeurParDefaut>
+ <DossierCoeur>coeurs/old_c10m10</DossierCoeur>
+ </Coeur>
+ </Coeurs>
<SiteAide Type="Absolute">
- <!--
- <SiteAide Type="Relative">
- -->
- <Commentaire>Aide Flare</Commentaire>
- <SyDocActivation>false</SyDocActivation>
- <!-- Chemin défini en relatif (inutilisé par SyDoc) -->
- <!--
- <CheminBase>aide/%1$s/SyDoC_HTML/Default.htm#cshid=</CheminBase>
- -->
- <!-- Chemin défini en absolu (inutilisé par SyDoc, à définir en UNC pour aider IE) -->
- <CheminBase>http://webhelp/SyDoc/%1$s/SyDoC_HTML/Default.htm#cshid=</CheminBase>
- </SiteAide>
- <SiteOptions>
- <SiteOption Nom="availableLanguage" UserVisible="true">
- <Commentaire>Langues disponibles</Commentaire>
- <Valeur>fr_FR</Valeur>
- </SiteOption>
- <SiteOption Nom="maxComparisonItemsDisplayed" UserVisible="true">
- <Commentaire>Nombre maximal de différences affichées</Commentaire>
- <Valeur>1000</Valeur>
- </SiteOption>
- <SiteOption Nom="maxLogLinesRead" UserVisible="true">
- <Commentaire>Nombre maximal de lignes lues dans un CR</Commentaire>
- <Valeur>5000</Valeur>
- </SiteOption>
- <SiteOption Nom="maxComparisonResultsByEMH" UserVisible="true">
- <Commentaire>Nombre maximal de différences sur les résultats de calcul par EMH</Commentaire>
- <Valeur>500</Valeur>
- </SiteOption>
- <SiteOption Nom="crue10.rptr.exeOption" UserVisible="true">
- <Commentaire>Crue 10: option pour demande de pre-traitement réseau.</Commentaire>
- <Valeur>-r</Valeur>
- </SiteOption>
- <SiteOption Nom="crue10.rptg.exeOption" UserVisible="true">
- <Commentaire>Crue 10: Demande de pre-traitement de la géometrie.</Commentaire>
- <Valeur>-g</Valeur>
- </SiteOption>
- <SiteOption Nom="crue10.rpti.exeOption" UserVisible="true">
- <Commentaire>Crue 10: Demande de pre-traitement des conditions initiales.</Commentaire>
- <Valeur>-i</Valeur>
- </SiteOption>
- <SiteOption Nom="crue10.rcal.exeOption" UserVisible="true">
- <Commentaire>Crue 10: Demande de calculs.</Commentaire>
- <Valeur>-c</Valeur>
- </SiteOption>
- </SiteOptions>
- </Site>
- <User>
- <UserOptions>
- <UserOption Nom="userLanguage">
- <Commentaire>Langue choisie pour l'utilisateur</Commentaire>
- <Valeur>fr_FR</Valeur>
- </UserOption>
- <UserOption Nom="uiUpdateProgressFrequence">
- <Commentaire>Fréquence de rafraîchissement en seconde de l'interface pendant le déroulement d'un run</Commentaire>
- <Valeur>0.2</Valeur>
- </UserOption>
- <UserOption Nom="externalEditor">
- <Commentaire>Chemin ou commande vers l'éditeur externe</Commentaire>
- <Valeur>C:\Program Files (x86)\Notepad++\notepad++.exe</Valeur>
- </UserOption>
- <UserOption Nom="crue9Exe">
- <Commentaire>Chemin ou commande vers l'exécutable Crue 9</Commentaire>
- <Valeur>Q:\Qualif_Exec\Crue9\crue9.exe</Valeur>
- </UserOption>
- </UserOptions>
- </User>
+ <!--
+ <SiteAide Type="Relative">
+ -->
+ <Commentaire>Aide Flare</Commentaire>
+ <SyDocActivation>false</SyDocActivation>
+ <!-- Chemin défini en relatif (inutilisé par SyDoc) -->
+ <!--
+ <CheminBase>aide/%1$s/SyDoC_HTML/Default.htm#cshid=</CheminBase>
+ -->
+ <!-- Chemin défini en absolu (inutilisé par SyDoc, à définir en UNC pour aider IE) -->
+ <CheminBase>http://webhelp/SyDoc/%1$s/SyDoC_HTML/Default.htm#cshid=</CheminBase>
+ </SiteAide>
+ <SiteOptions>
+ <SiteOption Nom="availableLanguage" UserVisible="true">
+ <Commentaire>Langues disponibles</Commentaire>
+ <Valeur>fr_FR</Valeur>
+ </SiteOption>
+ <SiteOption Nom="maxComparisonItemsDisplayed" UserVisible="true">
+ <Commentaire>Nombre maximal de différences affichées</Commentaire>
+ <Valeur>1000</Valeur>
+ </SiteOption>
+ <SiteOption Nom="nbExportCrue9SignificantFigures" UserVisible="true">
+ <Commentaire>Nombre de chiffres significatifs export Crue 9</Commentaire>
+ <Valeur>8</Valeur>
+ </SiteOption>
+ <SiteOption Nom="maxLogLinesRead" UserVisible="true">
+ <Commentaire>Nombre maximal de lignes lues dans un CR</Commentaire>
+ <Valeur>5000</Valeur>
+ </SiteOption>
+ <SiteOption Nom="maxComparisonResultsByEMH" UserVisible="true">
+ <Commentaire>Nombre maximal de différences sur les résultats de calcul par EMH</Commentaire>
+ <Valeur>500</Valeur>
+ </SiteOption>
+ <SiteOption Nom="crue10.rptr.exeOption" UserVisible="true">
+ <Commentaire>Crue 10: option pour demande de pre-traitement réseau.</Commentaire>
+ <Valeur>-r</Valeur>
+ </SiteOption>
+ <SiteOption Nom="crue10.rptg.exeOption" UserVisible="true">
+ <Commentaire>Crue 10: Demande de pre-traitement de la géometrie.</Commentaire>
+ <Valeur>-g</Valeur>
+ </SiteOption>
+ <SiteOption Nom="crue10.rpti.exeOption" UserVisible="true">
+ <Commentaire>Crue 10: Demande de pre-traitement des conditions initiales.</Commentaire>
+ <Valeur>-i</Valeur>
+ </SiteOption>
+ <SiteOption Nom="crue10.rcal.exeOption" UserVisible="true">
+ <Commentaire>Crue 10: Demande de calculs.</Commentaire>
+ <Valeur>-c</Valeur>
+ </SiteOption>
+ </SiteOptions>
+ </Site>
+ <User>
+ <UserOptions>
+ <UserOption Nom="userLanguage">
+ <Commentaire>Langue choisie pour l'utilisateur</Commentaire>
+ <Valeur>fr_FR</Valeur>
+ </UserOption>
+ <UserOption Nom="uiUpdateProgressFrequence">
+ <Commentaire>Fréquence de rafraîchissement en seconde de l'interface pendant le déroulement d'un run</Commentaire>
+ <Valeur>0.2</Valeur>
+ </UserOption>
+ <UserOption Nom="externalEditor">
+ <Commentaire>Chemin ou commande vers l'éditeur externe</Commentaire>
+ <Valeur>C:\Program Files (x86)\Notepad++\notepad++.exe</Valeur>
+ </UserOption>
+ <UserOption Nom="crue9Exe">
+ <Commentaire>Chemin ou commande vers l'exécutable Crue 9</Commentaire>
+ <Valeur>Q:\Qualif_Exec\Crue9\crue9.exe</Valeur>
+ </UserOption>
+ </UserOptions>
+ </User>
</Configuration>
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/sig/tracecasier/GGFilesDbfReader.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/sig/tracecasier/GGFilesDbfReader.java 2016-03-21 22:25:12 UTC (rev 9317)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/sig/tracecasier/GGFilesDbfReader.java 2016-03-21 22:26:47 UTC (rev 9318)
@@ -44,6 +44,9 @@
if (GGFileToTraceCasierProcessor.ATTRIBUTE_NAME_NOM_CASIER.equals(name)) {
expectedClass = String.class;
}
+ if (Long.class.equals(readClass)) {
+ readClass = Double.class;
+ }
if (!expectedClass.equals(readClass)) {
log.addSevereError(NbBundle.getMessage(GGFileToTraceCasierProcessor.class, "traceCasier.AttributeWithWrongType", name, readClass.toString(),
expectedClass.toString()));
@@ -76,9 +79,9 @@
DbaseFileReader.Row row = r.readRow();
String nom = CruePrefix.addPrefix((String) row.read(nomIdx), EnumCatEMH.CASIER);
TraceCasierProfilContent content = contentByName.get(nom);
- double distance = (Double) row.read(distanceIdx);
- double xt = (Double) row.read(xtIdx);
- double z = (Double) row.read(zIdx);
+ double distance = ((Number) row.read(distanceIdx)).doubleValue();
+ double xt = ((Number) row.read(xtIdx)).doubleValue();
+ double z = ((Number) row.read(zIdx)).doubleValue();
if (content == null) {
content = new TraceCasierProfilContent(nom, xtEpsilon);
content.setDistance(distance);
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/ConfigTest.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/ConfigTest.java 2016-03-21 22:25:12 UTC (rev 9317)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/ConfigTest.java 2016-03-21 22:26:47 UTC (rev 9318)
@@ -179,6 +179,8 @@
res.add("groupeImage.visible");
res.add("groupeAutre.visible");
res.add("groupeFichierSIG.visible");
+ res.add("groupeTraceProfils.visible");
+ res.add("groupeProfilsCasier.visible");
return res;
}
@@ -192,6 +194,7 @@
List<String> expected = getExpectedProperties();
// assertEquals(expected.size(), keySet.size());
for (int i = 0; i < keySet.size(); i++) {
+ System.err.println(keySet.get(i));
assertEquals("i= " + i, expected.get(i), keySet.get(i));
}
try {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-04-18 15:49:14
|
Revision: 9382
http://sourceforge.net/p/fudaa/svn/9382
Author: deniger
Date: 2016-04-18 15:49:11 +0000 (Mon, 18 Apr 2016)
Log Message:
-----------
version 1.9-SNAPSHOT
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/section/ProfilSectionEditionCreator.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/SectionProfilAttachedToBrancheAction.java
Modified: trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/section/ProfilSectionEditionCreator.java
===================================================================
--- trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/section/ProfilSectionEditionCreator.java 2016-04-18 15:41:39 UTC (rev 9381)
+++ trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/section/ProfilSectionEditionCreator.java 2016-04-18 15:49:11 UTC (rev 9382)
@@ -153,7 +153,7 @@
//on reinitialise correctement les frottements:
if (litNumerote.getFrot() == null) {
if (litNumerote.getIsLitActif()) {
- assert litNumerote.getIsLitMineur() == false;//ne doit jamais arriver.
+// assert litNumerote.getIsLitMineur() == false;//ne doit jamais arriver.
litNumerote.setFrot(editionProfilCreator.getOrCreateFrtMajeur(sousModele, controller.ccm));
} else {
if (emptyDonFrtFkSto == null) {
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/SectionProfilAttachedToBrancheAction.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/SectionProfilAttachedToBrancheAction.java 2016-04-18 15:41:39 UTC (rev 9381)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/SectionProfilAttachedToBrancheAction.java 2016-04-18 15:49:11 UTC (rev 9382)
@@ -50,7 +50,7 @@
@Override
protected boolean isProcessorEnable() {
- return selection.isActionEnable();
+ return selection != null && selection.isActionEnable();
}
@Override
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-10-12 13:18:03
|
Revision: 9431
http://sourceforge.net/p/fudaa/svn/9431
Author: deniger
Date: 2016-10-12 13:18:00 +0000 (Wed, 12 Oct 2016)
Log Message:
-----------
CRUE-673 Affichage des r?\195?\169sultats: probl?\195?\168me d'axes verticaux dupliqu?\195?\169s
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingNetworkTopComponent.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilder.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilderCourbe.java
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingNetworkTopComponent.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingNetworkTopComponent.java 2016-10-12 11:55:12 UTC (rev 9430)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingNetworkTopComponent.java 2016-10-12 13:18:00 UTC (rev 9431)
@@ -244,7 +244,7 @@
return;
}
updating = true;
- Set<Long> selectedUid = new HashSet<>(resultatEMHsSelected.allInstances());
+ Set<Long> selectedUid = new HashSet<Long>(resultatEMHsSelected.allInstances());
selectEMHs(selectedUid);
updating = false;
}
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilder.java 2016-10-12 11:55:12 UTC (rev 9430)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilder.java 2016-10-12 13:18:00 UTC (rev 9431)
@@ -5,8 +5,10 @@
import java.util.ArrayList;
import java.util.Collections;
+import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
+import java.util.Map;
import java.util.Set;
import org.apache.commons.lang.StringUtils;
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetierConstants;
@@ -49,8 +51,8 @@
super(uiController, loiLabelsManager);
}
- protected EGAxeVertical getOrCreateAxeVerticalZ(ReportLongitudinalConfig content) {
- return getOrCreateAxeVerticalConfigured(getVariableZ().getNature(), content, null);
+ protected EGAxeVertical getOrCreateAxeVerticalZ(ReportLongitudinalConfig content, Map<String, EGAxeVertical> saved) {
+ return getOrCreateAxeVerticalConfigured(getVariableZ().getNature(), content, saved);
}
ReportLongitudinalPositionBrancheContent result;
@@ -67,7 +69,8 @@
@Override
public List<EGCourbeSimple> getInternCourbes(ReportLongitudinalConfig content, ProgressHandle progress) {
- ReportLongitudinalGrapheBuilderCourbe courbeBuilder = new ReportLongitudinalGrapheBuilderCourbe(reportService.getCcm(), this, content);
+ Map<String, EGAxeVertical> saved = new HashMap<>();
+ ReportLongitudinalGrapheBuilderCourbe courbeBuilder = new ReportLongitudinalGrapheBuilderCourbe(reportService.getCcm(), this, content, saved);
EGAxeVertical axeZ = courbeBuilder.getAxeZ();
uiController.configureAxeH(reportService.getCcm().getProperty(CrueConfigMetierConstants.PROP_XP), true);
double xpInit = 0;
@@ -84,7 +87,7 @@
}
uiController.getGraphe().setHorizontalBanner(new ReportLongitudinalBanner(content, result));
final List<EGCourbeSimple> res = createNonTimeStepCourbes(content, axeZ, courbeBuilder, progress);
- res.addAll(createCourbesOnCurrentTimeStep(content, progress));
+ res.addAll(createCourbesOnCurrentTimeStep(content, progress, saved));
return res;
}
@@ -123,16 +126,18 @@
@Override
public List<EGCourbeSimple> getInternCourbesAfterTimeChanged(ReportLongitudinalConfig content, ProgressHandle progress) {
+ Map<String, EGAxeVertical> saved = new HashMap<>();
List<EGCourbeSimple> res = retrieveCourbesNonTimeStep();
- res.addAll(createCourbesOnCurrentTimeStep(content, progress));
+ res.addAll(createCourbesOnCurrentTimeStep(content, progress, saved));
return res;
}
- private List<EGCourbeSimple> createCourbesOnCurrentTimeStep(ReportLongitudinalConfig content, ProgressHandle progress) {
+ private List<EGCourbeSimple> createCourbesOnCurrentTimeStep(ReportLongitudinalConfig content, ProgressHandle progress,
+ Map<String, EGAxeVertical> saved) {
if (Boolean.FALSE.equals(content.getCurrentTimeDisplayed())) {
return Collections.emptyList();
}
- ReportLongitudinalGrapheBuilderCourbe courbeBuilder = new ReportLongitudinalGrapheBuilderCourbe(reportService.getCcm(), this, content);
+ ReportLongitudinalGrapheBuilderCourbe courbeBuilder = new ReportLongitudinalGrapheBuilderCourbe(reportService.getCcm(), this, content, saved);
if (result == null) {
return Collections.emptyList();
}
@@ -181,11 +186,11 @@
return keys;
}
- EGAxeVertical getRightAxis(ReportLongitudinalConfig content) {
+ EGAxeVertical getRightAxis(ReportLongitudinalConfig content, Map<String, EGAxeVertical> savedAxed) {
String variableDrawnOnRightAxis = content.getVariableDrawnOnRightAxis(reportResultProviderService);
EGAxeVertical rightAxis = null;
if (StringUtils.isNotBlank(variableDrawnOnRightAxis)) {
- rightAxis = getOrCreateAxeVerticalConfigured(reportResultProviderService.getPropertyNature(variableDrawnOnRightAxis), content, null);
+ rightAxis = getOrCreateAxeVerticalConfigured(reportResultProviderService.getPropertyNature(variableDrawnOnRightAxis), content, savedAxed);
}
if (rightAxis != null) {
rightAxis.setDroite(true);
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilderCourbe.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilderCourbe.java 2016-10-12 11:55:12 UTC (rev 9430)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/longitudinal/ReportLongitudinalGrapheBuilderCourbe.java 2016-10-12 13:18:00 UTC (rev 9431)
@@ -42,12 +42,13 @@
EGAxeVertical rightAxis;
ReportLongitudinalConfig content;
- public ReportLongitudinalGrapheBuilderCourbe(CrueConfigMetier ccm, ReportLongitudinalGrapheBuilder result, ReportLongitudinalConfig content) {
+ public ReportLongitudinalGrapheBuilderCourbe(CrueConfigMetier ccm, ReportLongitudinalGrapheBuilder result, ReportLongitudinalConfig content,
+ Map<String, EGAxeVertical> saved) {
this.ccm = ccm;
this.builder = result;
this.content = content;
- axeZ = builder.getOrCreateAxeVerticalZ(content);
- rightAxis = builder.getRightAxis(content);
+ axeZ = builder.getOrCreateAxeVerticalZ(content, saved);
+ rightAxis = builder.getRightAxis(content, saved);
}
public EGAxeVertical getAxeZ() {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-10-12 14:33:26
|
Revision: 9432
http://sourceforge.net/p/fudaa/svn/9432
Author: deniger
Date: 2016-10-12 14:33:23 +0000 (Wed, 12 Oct 2016)
Log Message:
-----------
CRUE-719 Import-Export des conditions initiales
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnable.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopExportImportPopupBuilder.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniImportProgressRunnable.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniTopComponentPopupFactory.java
trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnableTest.java
Added Paths:
-----------
trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/TablerFileReader.java
Added: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/TablerFileReader.java
===================================================================
--- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/TablerFileReader.java (rev 0)
+++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/TablerFileReader.java 2016-10-12 14:33:23 UTC (rev 9432)
@@ -0,0 +1,126 @@
+/*
+GPL 2
+ */
+package org.fudaa.fudaa.crue.common.helper;
+
+import com.Ostermiller.util.CSVParser;
+import com.memoire.bu.BuFileFilter;
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileReader;
+import java.io.InputStream;
+import java.io.Reader;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import javax.swing.JFileChooser;
+import org.apache.commons.lang.StringUtils;
+import org.apache.poi.ss.usermodel.Cell;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.ss.usermodel.WorkbookFactory;
+import org.fudaa.ctulu.CtuluLibFile;
+import org.fudaa.ctulu.CtuluResource;
+import org.fudaa.ctulu.gui.CtuluFileChooser;
+import org.openide.util.Exceptions;
+
+/**
+ * Lit a un fichier et le traduit en tableau a 2 dimension.
+ *
+ * @author Frederic Deniger
+ */
+public class TablerFileReader {
+
+ public static CtuluFileChooser createTablerFileChooser() {
+ final BuFileFilter ftCsv = new BuFileFilter(new String[]{"csv", "txt"}, CtuluResource.CTULU.getString("Texte CSV"));
+ final BuFileFilter ftXsl = new BuFileFilter(new String[]{"xls"}, CtuluResource.CTULU.getString("Fichier Excel 97-2003"));
+ final BuFileFilter ftXslx = new BuFileFilter(new String[]{"xlsx"}, CtuluResource.CTULU.getString("Fichier Excel"));
+ ftCsv.setExtensionListInDescription(true);
+ ftXsl.setExtensionListInDescription(true);
+ ftXslx.setExtensionListInDescription(true);
+ CtuluFileChooser fileChooser = new CtuluFileChooser(true);
+ fileChooser.addChoosableFileFilter(ftCsv);
+ fileChooser.addChoosableFileFilter(ftXsl);
+ fileChooser.addChoosableFileFilter(ftXslx);
+ fileChooser.setFileFilter(ftXslx);
+ fileChooser.setAcceptAllFileFilterUsed(false);
+ fileChooser.setMultiSelectionEnabled(false);
+ fileChooser.setDialogType(JFileChooser.SAVE_DIALOG);
+ return fileChooser;
+ }
+
+ public String[][] readFile(File file) {
+ final String nameToLowerCase = file.getName().toLowerCase();
+ if (nameToLowerCase.endsWith("xlsx") || nameToLowerCase.endsWith("xls")) {
+ List<String[]> rows = new ArrayList<>();
+ InputStream is = null;
+ try {
+ is = new FileInputStream(file);
+ Workbook wb = WorkbookFactory.create(is);
+ Sheet sheetAt = wb.getSheetAt(0);
+ int maxCol = 0;
+ for (Row row : sheetAt) {
+ maxCol = Math.max(maxCol, row.getLastCellNum());
+ }
+ for (Row row : sheetAt) {
+ List<String> cols = new ArrayList<>();
+ for (int i = 0; i < maxCol; i++) {
+ cols.add(getValue(row.getCell(i, Row.CREATE_NULL_AS_BLANK)));
+ }
+ rows.add(cols.toArray(new String[cols.size()]));
+ }
+ } catch (Exception ex) {
+ Exceptions.printStackTrace(ex);
+ } finally {
+ CtuluLibFile.close(is);
+ }
+ final String[][] toArray = rows.toArray(new String[rows.size()][]);
+ return toArray;
+
+ } else {
+ return readCsv(file);
+ }
+ }
+
+ protected String getValue(Cell cell) {
+ switch (cell.getCellType()) {
+ case Cell.CELL_TYPE_BLANK:
+ return "";
+ case Cell.CELL_TYPE_NUMERIC:
+ return Double.toString(cell.getNumericCellValue());
+ case Cell.CELL_TYPE_STRING:
+ return cell.getStringCellValue();
+ default:
+ try {
+ return Double.toString(cell.getNumericCellValue());
+ } catch (Exception ex) {
+ Logger.getLogger(TablerFileReader.class.getName()).log(Level.INFO, "message {0}", ex);
+ try {
+ return cell.getStringCellValue();
+ } catch (Exception ex1) {
+ Logger.getLogger(TablerFileReader.class.getName()).log(Level.INFO, "message {0}", ex1);
+
+ }
+ }
+ }
+ return StringUtils.EMPTY;
+ }
+
+ protected String[][] readCsv(File file) {
+ Reader reader = null;
+ String[][] values = null;
+ try {
+ reader = new FileReader(file);
+ values = new CSVParser(new BufferedReader(reader), ';').getAllValues();
+ } catch (Exception ex) {
+ Exceptions.printStackTrace(ex);
+ } finally {
+ CtuluLibFile.close(reader);
+ }
+ return values;
+ }
+
+}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnable.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnable.java 2016-10-12 13:18:00 UTC (rev 9431)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnable.java 2016-10-12 14:33:23 UTC (rev 9432)
@@ -4,28 +4,12 @@
package org.fudaa.fudaa.crue.modelling.calcul;
import com.Ostermiller.util.CSVParser;
-import java.io.BufferedReader;
import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileReader;
-import java.io.InputStream;
-import java.io.Reader;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-import org.apache.commons.lang.StringUtils;
-import org.apache.poi.ss.usermodel.Cell;
-import org.apache.poi.ss.usermodel.Row;
-import org.apache.poi.ss.usermodel.Sheet;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.ss.usermodel.WorkbookFactory;
-import org.fudaa.ctulu.CtuluLibFile;
+import org.fudaa.fudaa.crue.common.helper.TablerFileReader;
import org.fudaa.fudaa.crue.modelling.calcul.importer.CLimMsImporter;
import org.fudaa.fudaa.crue.views.DonClimMTableModel;
import org.netbeans.api.progress.ProgressHandle;
import org.netbeans.api.progress.ProgressRunnable;
-import org.openide.util.Exceptions;
/**
*
@@ -57,7 +41,7 @@
}
values = CSVParser.parse(initValues, sep);
} else if (file != null) {
- values = readFile();
+ values = new TablerFileReader().readFile(file);
}
if (values == null) {
return null;
@@ -69,74 +53,4 @@
return importer.importData();
}
- protected String getValue(Cell cell) {
- switch (cell.getCellType()) {
- case Cell.CELL_TYPE_BLANK:
- return "";
- case Cell.CELL_TYPE_NUMERIC:
- return Double.toString(cell.getNumericCellValue());
- case Cell.CELL_TYPE_STRING:
- return cell.getStringCellValue();
- default:
- try {
- return Double.toString(cell.getNumericCellValue());
- } catch (Exception ex) {
- Logger.getLogger(ModellingListCLimMsProgressRunnable.class.getName()).log(Level.INFO, "message {0}", ex);
- try {
- return cell.getStringCellValue();
- } catch (Exception ex1) {
- Logger.getLogger(ModellingListCLimMsProgressRunnable.class.getName()).log(Level.INFO, "message {0}", ex1);
-
- }
- }
- }
- return StringUtils.EMPTY;
- }
-
- protected String[][] readFile() {
- final String nameToLowerCase = file.getName().toLowerCase();
- if (nameToLowerCase.endsWith("xlsx") || nameToLowerCase.endsWith("xls")) {
- List<String[]> rows = new ArrayList<String[]>();
- InputStream is = null;
- try {
- is = new FileInputStream(file);
- Workbook wb = WorkbookFactory.create(is);
- Sheet sheetAt = wb.getSheetAt(0);
- int maxCol = 0;
- for (Row row : sheetAt) {
- maxCol = Math.max(maxCol, row.getLastCellNum());
- }
- for (Row row : sheetAt) {
- List<String> cols = new ArrayList<String>();
- for (int i = 0; i < maxCol; i++) {
- cols.add(getValue(row.getCell(i, Row.CREATE_NULL_AS_BLANK)));
- }
- rows.add(cols.toArray(new String[cols.size()]));
- }
- } catch (Exception ex) {
- Exceptions.printStackTrace(ex);
- } finally {
- CtuluLibFile.close(is);
- }
- final String[][] toArray = rows.toArray(new String[rows.size()][]);
- return toArray;
-
- } else {
- return readCsv();
- }
- }
-
- protected String[][] readCsv() {
- Reader reader = null;
- String[][] values = null;
- try {
- reader = new FileReader(file);
- values = new CSVParser(new BufferedReader(reader), ';').getAllValues();
- } catch (Exception ex) {
- Exceptions.printStackTrace(ex);
- } finally {
- CtuluLibFile.close(reader);
- }
- return values;
- }
}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopExportImportPopupBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopExportImportPopupBuilder.java 2016-10-12 13:18:00 UTC (rev 9431)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopExportImportPopupBuilder.java 2016-10-12 14:33:23 UTC (rev 9432)
@@ -16,6 +16,7 @@
import org.fudaa.ctulu.gui.CtuluTableSimpleExporter;
import org.fudaa.fudaa.crue.common.helper.CrueProgressUtils;
import org.fudaa.fudaa.crue.common.helper.CtuluUIForNetbeans;
+import org.fudaa.fudaa.crue.common.helper.TablerFileReader;
import org.fudaa.fudaa.crue.views.DonClimMTableModel;
import org.fudaa.fudaa.crue.views.LoiDisplayer;
import org.fudaa.fudaa.crue.views.LoiDisplayerInstaller;
@@ -53,20 +54,7 @@
if (!tc.isEditable()) {
return;
}
- final BuFileFilter ftCsv = new BuFileFilter(new String[]{"csv", "txt"}, CtuluResource.CTULU.getString("Texte CSV"));
- final BuFileFilter ftXsl = new BuFileFilter(new String[]{"xls"}, CtuluResource.CTULU.getString("Fichier Excel 97-2003"));
- final BuFileFilter ftXslx = new BuFileFilter(new String[]{"xlsx"}, CtuluResource.CTULU.getString("Fichier Excel"));
- ftCsv.setExtensionListInDescription(true);
- ftXsl.setExtensionListInDescription(true);
- ftXslx.setExtensionListInDescription(true);
- CtuluFileChooser fileChooser = new CtuluFileChooser(true);
- fileChooser.addChoosableFileFilter(ftCsv);
- fileChooser.addChoosableFileFilter(ftXsl);
- fileChooser.addChoosableFileFilter(ftXslx);
- fileChooser.setFileFilter(ftXslx);
- fileChooser.setAcceptAllFileFilterUsed(false);
- fileChooser.setMultiSelectionEnabled(false);
- fileChooser.setDialogType(JFileChooser.SAVE_DIALOG);
+ CtuluFileChooser fileChooser = TablerFileReader.createTablerFileChooser();
final int res = fileChooser.showDialog(CtuluUIForNetbeans.DEFAULT.getParentComponent(), NbBundle.getMessage(
ModellingListCLimMsTopExportImportPopupBuilder.class,
"button.import.name"));
@@ -81,6 +69,7 @@
}
}
+
protected JMenuItem createExportMenuItem() throws MissingResourceException {
final JMenuItem menuItemExport = new JMenuItem(NbBundle.getMessage(ModellingListCLimMsTopExportImportPopupBuilder.class, "button.export.name"));
menuItemExport.addActionListener(new ActionListener() {
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniImportProgressRunnable.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniImportProgressRunnable.java 2016-10-12 13:18:00 UTC (rev 9431)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniImportProgressRunnable.java 2016-10-12 14:33:23 UTC (rev 9432)
@@ -4,17 +4,13 @@
package org.fudaa.fudaa.crue.modelling.calcul;
import com.Ostermiller.util.CSVParser;
-import java.io.BufferedReader;
import java.io.File;
-import java.io.FileReader;
-import java.io.Reader;
-import org.fudaa.ctulu.CtuluLibFile;
import org.fudaa.ctulu.CtuluLog;
+import org.fudaa.fudaa.crue.common.helper.TablerFileReader;
import org.fudaa.fudaa.crue.common.log.LogsDisplayer;
import org.fudaa.fudaa.crue.modelling.calcul.importer.CiniImporter;
import org.netbeans.api.progress.ProgressHandle;
import org.netbeans.api.progress.ProgressRunnable;
-import org.openide.util.Exceptions;
import org.openide.util.NbBundle;
/**
@@ -22,24 +18,23 @@
* @author Frederic Deniger
*/
public class ModellingListCiniImportProgressRunnable implements ProgressRunnable<Object> {
-
+
private File file;
private final ModellingListCiniTopComponent topComponent;
private String initValues;
-
+
public ModellingListCiniImportProgressRunnable(File file, ModellingListCiniTopComponent topComponent) {
this.file = file;
this.topComponent = topComponent;
}
-
+
public ModellingListCiniImportProgressRunnable(String initValues, ModellingListCiniTopComponent topComponent) {
this.topComponent = topComponent;
this.initValues = initValues;
}
-
+
@Override
public Object run(ProgressHandle handle) {
- Reader reader = null;
String[][] values = null;
if (initValues != null) {
char sep = '\t';
@@ -48,14 +43,7 @@
}
values = CSVParser.parse(initValues, sep);
} else if (file != null) {
- try {
- reader = new FileReader(file);
- values = new CSVParser(new BufferedReader(reader), ';').getAllValues();
- } catch (Exception ex) {
- Exceptions.printStackTrace(ex);
- } finally {
- CtuluLibFile.close(reader);
- }
+ values = new TablerFileReader().readFile(file);
}
if (values == null) {
return null;
@@ -72,8 +60,9 @@
title = NbBundle.getMessage(ModellingListCiniImportProgressRunnable.class, "cini.importClipboard.bilan");
}
LogsDisplayer.displayError(importData, title);
-
+
}
return null;
}
+
}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniTopComponentPopupFactory.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniTopComponentPopupFactory.java 2016-10-12 13:18:00 UTC (rev 9431)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniTopComponentPopupFactory.java 2016-10-12 14:33:23 UTC (rev 9432)
@@ -3,7 +3,6 @@
*/
package org.fudaa.fudaa.crue.modelling.calcul;
-import com.memoire.bu.BuFileFilter;
import java.awt.Component;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
@@ -15,13 +14,13 @@
import javax.swing.JMenuItem;
import javax.swing.JPopupMenu;
import javax.swing.KeyStroke;
-import org.fudaa.ctulu.CtuluResource;
import org.fudaa.ctulu.gui.CtuluFileChooser;
import org.fudaa.ctulu.gui.CtuluTableSimpleExporter;
import org.fudaa.ctulu.table.CtuluTable;
import org.fudaa.ctulu.table.CtuluTableModelDefault;
import org.fudaa.fudaa.crue.common.helper.CrueProgressUtils;
import org.fudaa.fudaa.crue.common.helper.CtuluUIForNetbeans;
+import org.fudaa.fudaa.crue.common.helper.TablerFileReader;
import org.fudaa.fudaa.crue.modelling.list.ListNodeAddPopupFactory;
import org.fudaa.fudaa.crue.views.export.OutlineViewExportTableModel;
import org.openide.explorer.view.NodePopupFactory;
@@ -120,14 +119,7 @@
if (!tc.isEditable()) {
return;
}
- final BuFileFilter ftCsv = new BuFileFilter(new String[]{"txt", "csv"}, CtuluResource.CTULU.getString("Texte CSV"));
- ftCsv.setExtensionListInDescription(true);
- CtuluFileChooser fileChooser = new CtuluFileChooser(true);
- fileChooser.addChoosableFileFilter(ftCsv);
- fileChooser.setFileFilter(ftCsv);
- fileChooser.setAcceptAllFileFilterUsed(false);
- fileChooser.setMultiSelectionEnabled(false);
- fileChooser.setDialogType(JFileChooser.SAVE_DIALOG);
+ CtuluFileChooser fileChooser = TablerFileReader.createTablerFileChooser();
final int res = fileChooser.showDialog(CtuluUIForNetbeans.DEFAULT.getParentComponent(), NbBundle.getMessage(ModellingListCiniTopComponent.class,
"button.import.name"));
if (res == JFileChooser.APPROVE_OPTION) {
Modified: trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnableTest.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnableTest.java 2016-10-12 13:18:00 UTC (rev 9431)
+++ trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnableTest.java 2016-10-12 14:33:23 UTC (rev 9432)
@@ -6,6 +6,7 @@
import java.io.File;
import java.io.IOException;
import org.fudaa.ctulu.CtuluLibFile;
+import org.fudaa.fudaa.crue.common.helper.TablerFileReader;
import static org.junit.Assert.*;
import org.junit.Test;
@@ -27,8 +28,7 @@
protected void testContent(File f) {
assertNotNull(f);
- ModellingListCLimMsProgressRunnable runnable = new ModellingListCLimMsProgressRunnable(f, null);
- String[][] values = runnable.readFile();
+ String[][] values = new TablerFileReader().readFile(f);
assertEquals(2, values.length);
assertEquals(5, values[0].length);
assertArrayEquals(new String[]{"A", "", "B", "C", "D"}, values[0]);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-10-12 15:39:54
|
Revision: 9433
http://sourceforge.net/p/fudaa/svn/9433
Author: deniger
Date: 2016-10-12 15:39:52 +0000 (Wed, 12 Oct 2016)
Log Message:
-----------
CRUE-715: Fonction annuler dans certains ?\195?\169diteurs de branches...
Ajout des fonctions de clone pour permettre l'annulation des modifications
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonCalcSansPrtBrancheBarrageFilEau.java
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/RelationEMHSectionDansBranche.java
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/RelationEMHSectionDansBrancheSaintVenant.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheBarrageFilEauPanel.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheSaintVenantPanel.java
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonCalcSansPrtBrancheBarrageFilEau.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonCalcSansPrtBrancheBarrageFilEau.java 2016-10-12 14:33:23 UTC (rev 9432)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/DonCalcSansPrtBrancheBarrageFilEau.java 2016-10-12 15:39:52 UTC (rev 9433)
@@ -34,7 +34,7 @@
*/
public java.util.Collection<ElemSeuil> getElemSeuil() {
if (elemSeuil == null) {
- elemSeuil = new java.util.HashSet<ElemSeuil>();
+ elemSeuil = new java.util.HashSet<>();
}
return elemSeuil;
}
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/RelationEMHSectionDansBranche.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/RelationEMHSectionDansBranche.java 2016-10-12 14:33:23 UTC (rev 9432)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/RelationEMHSectionDansBranche.java 2016-10-12 15:39:52 UTC (rev 9433)
@@ -1,13 +1,15 @@
-/***********************************************************************
+/** *********************************************************************
* Module: RelationEMHSectionDansBranche.java Author: deniger Purpose: Defines the Class RelationEMHSectionDansBranche
- ***********************************************************************/
-
+ ********************************************************************** */
package org.fudaa.dodico.crue.metier.emh;
import java.util.Collections;
import java.util.Map;
+import java.util.logging.Level;
+import java.util.logging.Logger;
-public class RelationEMHSectionDansBranche extends RelationEMH<CatEMHSection> {
+public class RelationEMHSectionDansBranche extends RelationEMH<CatEMHSection> implements Cloneable {
+
private double xp;
private EnumPosSection pos;
@@ -18,6 +20,21 @@
return pos;
}
+ public RelationEMHSectionDansBranche cloneValuesOnly() {
+ RelationEMHSectionDansBranche cloned = null;
+ try {
+ cloned = clone();
+ } catch (CloneNotSupportedException ex) {
+ Logger.getLogger(RelationEMHSectionDansBranche.class.getName()).log(Level.SEVERE, null, ex);
+ }
+ return cloned;
+ }
+
+ @Override
+ public RelationEMHSectionDansBranche clone() throws CloneNotSupportedException {
+ return (RelationEMHSectionDansBranche) super.clone();
+ }
+
/**
*
* @return une map contenant les données spécifiques de la branche. Utile pour les relatiosn de saint-venant
@@ -36,7 +53,9 @@
this.pos = pos;
}
- /** @pdOid a1909c6f-b4b5-4153-932b-ee7d864dfe17 */
+ /**
+ * @pdOid a1909c6f-b4b5-4153-932b-ee7d864dfe17
+ */
public double getXp() {
return xp;
}
@@ -49,4 +68,4 @@
xp = newXp;
}
-}
\ No newline at end of file
+}
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/RelationEMHSectionDansBrancheSaintVenant.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/RelationEMHSectionDansBrancheSaintVenant.java 2016-10-12 14:33:23 UTC (rev 9432)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/emh/RelationEMHSectionDansBrancheSaintVenant.java 2016-10-12 15:39:52 UTC (rev 9433)
@@ -7,6 +7,8 @@
import java.util.HashMap;
import java.util.Map;
+import java.util.logging.Level;
+import java.util.logging.Logger;
import org.fudaa.dodico.crue.common.annotation.PropertyDesc;
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetier;
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetierConstants;
@@ -32,6 +34,22 @@
return coefDiv;
}
+ public RelationEMHSectionDansBrancheSaintVenant cloneValuesOnly() {
+ RelationEMHSectionDansBrancheSaintVenant cloned = null;
+ try {
+ cloned = clone();
+ } catch (CloneNotSupportedException ex) {
+ Logger.getLogger(RelationEMHSectionDansBrancheSaintVenant.class.getName()).log(Level.SEVERE, null, ex);
+ }
+ return cloned;
+ }
+
+ @Override
+ public RelationEMHSectionDansBrancheSaintVenant clone() throws CloneNotSupportedException {
+ final RelationEMHSectionDansBrancheSaintVenant cloned = (RelationEMHSectionDansBrancheSaintVenant) super.clone();
+ return cloned;
+ }
+
/**
*
* @return une map contenant les données spécifiques de la branche. Utile pour les relatiosn de saint-venant
@@ -102,4 +120,4 @@
public void setCoefConv(final double newCoefConv) {
coefConv = newCoefConv;
}
-}
\ No newline at end of file
+}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheBarrageFilEauPanel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheBarrageFilEauPanel.java 2016-10-12 14:33:23 UTC (rev 9432)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheBarrageFilEauPanel.java 2016-10-12 15:39:52 UTC (rev 9433)
@@ -150,7 +150,7 @@
Collection<ElemSeuil> elemSeuilAvecPdc = dcsp.getElemSeuil();
CrueConfigMetier ccm = getCcm();
for (ElemSeuil elemSeuilAvecPdcNode : elemSeuilAvecPdc) {
- nodes.add(new ElemSeuilAduNode(elemSeuilAvecPdcNode, ccm, perspectiveServiceModelling));
+ nodes.add(new ElemSeuilAduNode(elemSeuilAvecPdcNode.clone(), ccm, perspectiveServiceModelling));
}
}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheSaintVenantPanel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheSaintVenantPanel.java 2016-10-12 14:33:23 UTC (rev 9432)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheSaintVenantPanel.java 2016-10-12 15:39:52 UTC (rev 9433)
@@ -39,7 +39,7 @@
* @author fred
*/
public class ModellingEMHBrancheSaintVenantPanel extends JPanel implements ModellingEMHBrancheSpecificEditor, Observer, ExplorerManager.Provider {
-
+
ModellingScenarioService modellingScenarioService = Lookup.getDefault().lookup(
ModellingScenarioService.class);
PerspectiveServiceModelling perspectiveServiceModelling = Lookup.getDefault().lookup(PerspectiveServiceModelling.class);
@@ -51,7 +51,7 @@
List<ItemVariableView> dcspProperties;
List<ItemVariableView> dptgProperties;
private DisableSortHelper sortDisabler;
-
+
ModellingEMHBrancheSaintVenantPanel(CatEMHBranche branche, ModellingEMHBrancheTopComponent parent) {
super(new BorderLayout(10, 10));
setPreferredSize(new Dimension(600, 800));
@@ -68,13 +68,13 @@
}
JPanel pnTop = createTopPanel(dcsp, ccm, dptg, branche);
add(pnTop, BorderLayout.NORTH);
-
+
RelationEMHSectionDansBranche sectionAval = branche.getSectionAval();
final ItemVariable propertyXp = ccm.getProperty(CrueConfigMetierConstants.PROP_XP);
List<Node> nodes = new ArrayList<Node>();
nodes.add(createLabelNode(NbBundle.getMessage(ModellingEMHBrancheSaintVenantPanel.class, "Amont.DisplayName")));
final boolean isSaintVenant = branche.getBrancheType().equals(EnumBrancheType.EMHBrancheSaintVenant);
-
+
List<RelationEMHSectionDansBranche> listeSectionsSortedXP = branche.getListeSectionsSortedXP(ccm);
ListRelationSectionContentFactoryNode factory = new ListRelationSectionContentFactoryNode();
//on ne s'occupe pas de la section aval:
@@ -84,9 +84,10 @@
sectionNode.setDisplayName(propertyXp.format(relation.getXp(), DecimalFormatEpsilonEnum.COMPARISON));
ModellingEMHBrancheStricklerPanel.removeWrite((AbstractNodeFirable) sectionNode);
nodes.add(sectionNode);
- RelationEMHSectionDansBrancheSaintVenant relationSaintVenant = isSaintVenant ? (RelationEMHSectionDansBrancheSaintVenant) relation : new RelationEMHSectionDansBrancheSaintVenant(
- ccm);
- CommonObjectNode<RelationEMHSectionDansBrancheSaintVenant> node = new CommonObjectNode<RelationEMHSectionDansBrancheSaintVenant>(
+ RelationEMHSectionDansBrancheSaintVenant relationSaintVenant = isSaintVenant ? ((RelationEMHSectionDansBrancheSaintVenant) relation).
+ cloneValuesOnly() : new RelationEMHSectionDansBrancheSaintVenant(
+ ccm);
+ CommonObjectNode<RelationEMHSectionDansBrancheSaintVenant> node = new CommonObjectNode<>(
relationSaintVenant, ccm, perspectiveServiceModelling);
node.addPropertyChangeListener(new PropertyChangeListener() {
@Override
@@ -96,7 +97,7 @@
});
nodes.add(node);
}
-
+
avalNode = factory.create(branche, sectionAval, ccm);
avalNode.setDisplayName(propertyXp.format(sectionAval.getXp(), DecimalFormatEpsilonEnum.COMPARISON));
ModellingEMHBrancheStricklerPanel.removeWrite((AbstractNodeFirable) avalNode);
@@ -114,10 +115,10 @@
view.getOutline().setRootVisible(false);
em.setRootContext(NodeHelper.createNode(nodes, "SECTIONS"));
parent.getLookup();
-
+
add(view);
}
-
+
private JPanel createTopPanel(DonCalcSansPrtBrancheSaintVenant dcsp, final CrueConfigMetier ccm, DonPrtGeoBrancheSaintVenant dptg,
CatEMHBranche branche) throws MissingResourceException {
JPanel pnTop = new JPanel(new BuGridLayout(4, 10, 10));
@@ -140,16 +141,16 @@
distance.addObserver(this);
return pnTop;
}
-
+
@Override
public ExplorerManager getExplorerManager() {
return em;
}
-
+
private Node createLabelNode(String name) {
return new DelimiteurNode(name);
}
-
+
@Override
public void update(Observable o, Object arg) {
parent.setModified(true);
@@ -160,11 +161,11 @@
Exceptions.printStackTrace(exception);
}
}
-
+
private CrueConfigMetier getCcm() {
return modellingScenarioService.getSelectedProjet().getPropDefinition();
}
-
+
@Override
public void setEditable(boolean editable) {
for (ItemVariableView object : dcspProperties) {
@@ -191,7 +192,7 @@
}
return res;
}
-
+
@Override
public void fillWithData(BrancheEditionContent content) {
DonCalcSansPrtBrancheSaintVenant dcsp = new DonCalcSansPrtBrancheSaintVenant(getCcm());
@@ -203,7 +204,7 @@
content.setDcsp(dcsp);
content.setDptgSaintVenant(dptg);
}
-
+
@Override
public JComponent getComponent() {
return this;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-10-13 08:37:39
|
Revision: 9436
http://sourceforge.net/p/fudaa/svn/9436
Author: deniger
Date: 2016-10-13 08:37:36 +0000 (Thu, 13 Oct 2016)
Log Message:
-----------
CRUE-667: Import de conditions aux limites
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/section/ProfilPopupMenuReceiver.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnable.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopExportImportPopupBuilder.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniImportProgressRunnable.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniTopComponentPopupFactory.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheBarrageFilEauPanel.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/loi/ModellingProfilSectionMenuReceiver.java
trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/loi/Bundle.properties
trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnableTest.java
trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/ReportListCLimMsTopExportPopupBuilder.java
Removed Paths:
-------------
trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/TablerFileReader.java
trunk/soft/fudaa-crue/ui-modelling/src/test/resources/org/
Deleted: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/TablerFileReader.java
===================================================================
--- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/TablerFileReader.java 2016-10-13 08:36:59 UTC (rev 9435)
+++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/helper/TablerFileReader.java 2016-10-13 08:37:36 UTC (rev 9436)
@@ -1,126 +0,0 @@
-/*
-GPL 2
- */
-package org.fudaa.fudaa.crue.common.helper;
-
-import com.Ostermiller.util.CSVParser;
-import com.memoire.bu.BuFileFilter;
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileReader;
-import java.io.InputStream;
-import java.io.Reader;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-import javax.swing.JFileChooser;
-import org.apache.commons.lang.StringUtils;
-import org.apache.poi.ss.usermodel.Cell;
-import org.apache.poi.ss.usermodel.Row;
-import org.apache.poi.ss.usermodel.Sheet;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.ss.usermodel.WorkbookFactory;
-import org.fudaa.ctulu.CtuluLibFile;
-import org.fudaa.ctulu.CtuluResource;
-import org.fudaa.ctulu.gui.CtuluFileChooser;
-import org.openide.util.Exceptions;
-
-/**
- * Lit a un fichier et le traduit en tableau a 2 dimension.
- *
- * @author Frederic Deniger
- */
-public class TablerFileReader {
-
- public static CtuluFileChooser createTablerFileChooser() {
- final BuFileFilter ftCsv = new BuFileFilter(new String[]{"csv", "txt"}, CtuluResource.CTULU.getString("Texte CSV"));
- final BuFileFilter ftXsl = new BuFileFilter(new String[]{"xls"}, CtuluResource.CTULU.getString("Fichier Excel 97-2003"));
- final BuFileFilter ftXslx = new BuFileFilter(new String[]{"xlsx"}, CtuluResource.CTULU.getString("Fichier Excel"));
- ftCsv.setExtensionListInDescription(true);
- ftXsl.setExtensionListInDescription(true);
- ftXslx.setExtensionListInDescription(true);
- CtuluFileChooser fileChooser = new CtuluFileChooser(true);
- fileChooser.addChoosableFileFilter(ftCsv);
- fileChooser.addChoosableFileFilter(ftXsl);
- fileChooser.addChoosableFileFilter(ftXslx);
- fileChooser.setFileFilter(ftXslx);
- fileChooser.setAcceptAllFileFilterUsed(false);
- fileChooser.setMultiSelectionEnabled(false);
- fileChooser.setDialogType(JFileChooser.SAVE_DIALOG);
- return fileChooser;
- }
-
- public String[][] readFile(File file) {
- final String nameToLowerCase = file.getName().toLowerCase();
- if (nameToLowerCase.endsWith("xlsx") || nameToLowerCase.endsWith("xls")) {
- List<String[]> rows = new ArrayList<>();
- InputStream is = null;
- try {
- is = new FileInputStream(file);
- Workbook wb = WorkbookFactory.create(is);
- Sheet sheetAt = wb.getSheetAt(0);
- int maxCol = 0;
- for (Row row : sheetAt) {
- maxCol = Math.max(maxCol, row.getLastCellNum());
- }
- for (Row row : sheetAt) {
- List<String> cols = new ArrayList<>();
- for (int i = 0; i < maxCol; i++) {
- cols.add(getValue(row.getCell(i, Row.CREATE_NULL_AS_BLANK)));
- }
- rows.add(cols.toArray(new String[cols.size()]));
- }
- } catch (Exception ex) {
- Exceptions.printStackTrace(ex);
- } finally {
- CtuluLibFile.close(is);
- }
- final String[][] toArray = rows.toArray(new String[rows.size()][]);
- return toArray;
-
- } else {
- return readCsv(file);
- }
- }
-
- protected String getValue(Cell cell) {
- switch (cell.getCellType()) {
- case Cell.CELL_TYPE_BLANK:
- return "";
- case Cell.CELL_TYPE_NUMERIC:
- return Double.toString(cell.getNumericCellValue());
- case Cell.CELL_TYPE_STRING:
- return cell.getStringCellValue();
- default:
- try {
- return Double.toString(cell.getNumericCellValue());
- } catch (Exception ex) {
- Logger.getLogger(TablerFileReader.class.getName()).log(Level.INFO, "message {0}", ex);
- try {
- return cell.getStringCellValue();
- } catch (Exception ex1) {
- Logger.getLogger(TablerFileReader.class.getName()).log(Level.INFO, "message {0}", ex1);
-
- }
- }
- }
- return StringUtils.EMPTY;
- }
-
- protected String[][] readCsv(File file) {
- Reader reader = null;
- String[][] values = null;
- try {
- reader = new FileReader(file);
- values = new CSVParser(new BufferedReader(reader), ';').getAllValues();
- } catch (Exception ex) {
- Exceptions.printStackTrace(ex);
- } finally {
- CtuluLibFile.close(reader);
- }
- return values;
- }
-
-}
Modified: trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/section/ProfilPopupMenuReceiver.java
===================================================================
--- trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/section/ProfilPopupMenuReceiver.java 2016-10-13 08:36:59 UTC (rev 9435)
+++ trunk/soft/fudaa-crue/ui-loi/src/main/java/org/fudaa/fudaa/crue/loi/section/ProfilPopupMenuReceiver.java 2016-10-13 08:37:36 UTC (rev 9436)
@@ -28,9 +28,17 @@
return sectionController;
}
+ /**
+ * a redefinir si on veut ajouter un item pour l'import de fichier
+ */
+ protected void addImportItem() {
+
+ }
+
@Override
protected void addItems() {
super.addItems();
+ addImportItem();
popupMenu.addSeparator();
openFrt = new OpenFrt(sectionController);
popupMenu.add(openFrt);
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnable.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnable.java 2016-10-13 08:36:59 UTC (rev 9435)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnable.java 2016-10-13 08:37:36 UTC (rev 9436)
@@ -5,7 +5,7 @@
import com.Ostermiller.util.CSVParser;
import java.io.File;
-import org.fudaa.fudaa.crue.common.helper.TablerFileReader;
+import org.fudaa.ctulu.table.CtuluExcelCsvFileReader;
import org.fudaa.fudaa.crue.modelling.calcul.importer.CLimMsImporter;
import org.fudaa.fudaa.crue.views.DonClimMTableModel;
import org.netbeans.api.progress.ProgressHandle;
@@ -41,7 +41,7 @@
}
values = CSVParser.parse(initValues, sep);
} else if (file != null) {
- values = new TablerFileReader().readFile(file);
+ values = new CtuluExcelCsvFileReader(file).readFile();
}
if (values == null) {
return null;
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopExportImportPopupBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopExportImportPopupBuilder.java 2016-10-13 08:36:59 UTC (rev 9435)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsTopExportImportPopupBuilder.java 2016-10-13 08:37:36 UTC (rev 9436)
@@ -3,20 +3,19 @@
*/
package org.fudaa.fudaa.crue.modelling.calcul;
-import com.memoire.bu.BuFileFilter;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.MissingResourceException;
import javax.swing.JFileChooser;
import javax.swing.JMenuItem;
import javax.swing.JPopupMenu;
-import org.fudaa.ctulu.CtuluResource;
import org.fudaa.ctulu.gui.CtuluFileChooser;
+import org.fudaa.ctulu.gui.CtuluFileChooserCsvExcel;
import org.fudaa.ctulu.gui.CtuluPopupListener;
import org.fudaa.ctulu.gui.CtuluTableSimpleExporter;
+import org.fudaa.ebli.ressource.EbliResource;
import org.fudaa.fudaa.crue.common.helper.CrueProgressUtils;
import org.fudaa.fudaa.crue.common.helper.CtuluUIForNetbeans;
-import org.fudaa.fudaa.crue.common.helper.TablerFileReader;
import org.fudaa.fudaa.crue.views.DonClimMTableModel;
import org.fudaa.fudaa.crue.views.LoiDisplayer;
import org.fudaa.fudaa.crue.views.LoiDisplayerInstaller;
@@ -54,7 +53,7 @@
if (!tc.isEditable()) {
return;
}
- CtuluFileChooser fileChooser = TablerFileReader.createTablerFileChooser();
+ CtuluFileChooser fileChooser = CtuluFileChooserCsvExcel.createOpenFileChooser();
final int res = fileChooser.showDialog(CtuluUIForNetbeans.DEFAULT.getParentComponent(), NbBundle.getMessage(
ModellingListCLimMsTopExportImportPopupBuilder.class,
"button.import.name"));
@@ -69,9 +68,9 @@
}
}
-
protected JMenuItem createExportMenuItem() throws MissingResourceException {
final JMenuItem menuItemExport = new JMenuItem(NbBundle.getMessage(ModellingListCLimMsTopExportImportPopupBuilder.class, "button.export.name"));
+ menuItemExport.setIcon(EbliResource.EBLI.getToolIcon("crystal_exporter"));
menuItemExport.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
@@ -85,6 +84,7 @@
final JMenuItem menuItemImport = new JMenuItem(NbBundle.getMessage(ModellingListCLimMsTopExportImportPopupBuilder.class, "button.import.name"));
menuItemImport.setToolTipText(NbBundle.getMessage(ModellingListCLimMsTopExportImportPopupBuilder.class, "button.importClimMs.tooltip"));
menuItemImport.setEnabled(tc.isEditable());
+ menuItemImport.setIcon(EbliResource.EBLI.getToolIcon("crystal_importer"));
menuItemImport.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniImportProgressRunnable.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniImportProgressRunnable.java 2016-10-13 08:36:59 UTC (rev 9435)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniImportProgressRunnable.java 2016-10-13 08:37:36 UTC (rev 9436)
@@ -6,7 +6,7 @@
import com.Ostermiller.util.CSVParser;
import java.io.File;
import org.fudaa.ctulu.CtuluLog;
-import org.fudaa.fudaa.crue.common.helper.TablerFileReader;
+import org.fudaa.ctulu.table.CtuluExcelCsvFileReader;
import org.fudaa.fudaa.crue.common.log.LogsDisplayer;
import org.fudaa.fudaa.crue.modelling.calcul.importer.CiniImporter;
import org.netbeans.api.progress.ProgressHandle;
@@ -43,7 +43,7 @@
}
values = CSVParser.parse(initValues, sep);
} else if (file != null) {
- values = new TablerFileReader().readFile(file);
+ values = new CtuluExcelCsvFileReader(file).readFile();
}
if (values == null) {
return null;
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniTopComponentPopupFactory.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniTopComponentPopupFactory.java 2016-10-13 08:36:59 UTC (rev 9435)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCiniTopComponentPopupFactory.java 2016-10-13 08:37:36 UTC (rev 9436)
@@ -15,12 +15,12 @@
import javax.swing.JPopupMenu;
import javax.swing.KeyStroke;
import org.fudaa.ctulu.gui.CtuluFileChooser;
+import org.fudaa.ctulu.gui.CtuluFileChooserCsvExcel;
import org.fudaa.ctulu.gui.CtuluTableSimpleExporter;
import org.fudaa.ctulu.table.CtuluTable;
import org.fudaa.ctulu.table.CtuluTableModelDefault;
import org.fudaa.fudaa.crue.common.helper.CrueProgressUtils;
import org.fudaa.fudaa.crue.common.helper.CtuluUIForNetbeans;
-import org.fudaa.fudaa.crue.common.helper.TablerFileReader;
import org.fudaa.fudaa.crue.modelling.list.ListNodeAddPopupFactory;
import org.fudaa.fudaa.crue.views.export.OutlineViewExportTableModel;
import org.openide.explorer.view.NodePopupFactory;
@@ -54,11 +54,11 @@
@Override
public JPopupMenu createPopupMenu(int row, int column, Node[] selectedNodes, Component component) {
JPopupMenu res = super.createPopupMenu(row, column, selectedNodes, component);
- if(res.getComponentCount() == 1) {
+ if (res.getComponentCount() == 1) {
// ajout du séparateur uniquement si un item est présent avant
res.addSeparator();
}
-
+
final JMenuItem menuItemPaste = new JMenuItem(NbBundle.getMessage(ModellingListCiniTopComponentPopupFactory.class,
"button.importFromClipboard.name"));
menuItemPaste.setToolTipText(NbBundle.getMessage(ModellingListCiniTopComponentPopupFactory.class, "button.importFromClipboard.tooltip"));
@@ -119,7 +119,7 @@
if (!tc.isEditable()) {
return;
}
- CtuluFileChooser fileChooser = TablerFileReader.createTablerFileChooser();
+ CtuluFileChooser fileChooser = CtuluFileChooserCsvExcel.createOpenFileChooser();
final int res = fileChooser.showDialog(CtuluUIForNetbeans.DEFAULT.getParentComponent(), NbBundle.getMessage(ModellingListCiniTopComponent.class,
"button.import.name"));
if (res == JFileChooser.APPROVE_OPTION) {
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheBarrageFilEauPanel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheBarrageFilEauPanel.java 2016-10-13 08:36:59 UTC (rev 9435)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheBarrageFilEauPanel.java 2016-10-13 08:37:36 UTC (rev 9436)
@@ -44,7 +44,7 @@
*
* @author fred
*/
-public class ModellingEMHBrancheBarrageFilEauPanel extends JPanel implements ModellingEMHBrancheSpecificEditor, Observer {
+public final class ModellingEMHBrancheBarrageFilEauPanel extends JPanel implements ModellingEMHBrancheSpecificEditor, Observer {
ModellingScenarioService modellingScenarioService = Lookup.getDefault().lookup(
ModellingScenarioService.class);
@@ -76,7 +76,7 @@
JPanel top = new JPanel(new BuGridLayout(4, 10, 10));
add(top, BorderLayout.NORTH);
- properties = ItemVariableView.create(DecimalFormatEpsilonEnum.COMPARISON,dcsp, getCcm(), DonCalcSansPrtBrancheNiveauxAssocies.PROP_QLIMINF,
+ properties = ItemVariableView.create(DecimalFormatEpsilonEnum.COMPARISON, dcsp, getCcm(), DonCalcSansPrtBrancheNiveauxAssocies.PROP_QLIMINF,
DonCalcSansPrtBrancheNiveauxAssocies.PROP_QLIMSUP);
for (ItemVariableView propertyEditorPanel : properties) {
propertyEditorPanel.addObserver(this);
@@ -145,7 +145,7 @@
private class SeuilView extends DefaultOutlineViewEditor {
protected void initWith(DonCalcSansPrtBrancheBarrageFilEau dcsp) {
- List<ElemSeuilAduNode> nodes = new ArrayList<ElemSeuilAduNode>();
+ List<ElemSeuilAduNode> nodes = new ArrayList<>();
if (dcsp != null) {
Collection<ElemSeuil> elemSeuilAvecPdc = dcsp.getElemSeuil();
CrueConfigMetier ccm = getCcm();
@@ -164,7 +164,7 @@
}
List<ElemSeuil> getElemSeuil() {
- List<ElemSeuil> res = new ArrayList<ElemSeuil>();
+ List<ElemSeuil> res = new ArrayList<>();
Node[] nodes = getExplorerManager().getRootContext().getChildren().getNodes();
for (Node node : nodes) {
ElemSeuil elemSeuil = node.getLookup().lookup(ElemSeuil.class);
@@ -228,7 +228,7 @@
try {
String toCopy = (String) Toolkit.getDefaultToolkit().getSystemClipboard().getData(DataFlavor.stringFlavor);
String[][] parse = CSVParser.parse(toCopy, '\t');
- List<ElemSeuilAduNode> contents = new ArrayList<ElemSeuilAduNode>();
+ List<ElemSeuilAduNode> contents = new ArrayList<>();
for (String[] strings : parse) {
if (strings.length >= 1) {
ElemSeuil newContent = new ElemSeuil(ccm);
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/loi/ModellingProfilSectionMenuReceiver.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/loi/ModellingProfilSectionMenuReceiver.java 2016-10-13 08:36:59 UTC (rev 9435)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/loi/ModellingProfilSectionMenuReceiver.java 2016-10-13 08:37:36 UTC (rev 9436)
@@ -15,7 +15,9 @@
import org.fudaa.dodico.crue.metier.algo.DonPrtGeoProfilSectionInverser;
import org.fudaa.dodico.crue.metier.emh.DonPrtGeoProfilSection;
import org.fudaa.ebli.commun.EbliActionSimple;
+import org.fudaa.ebli.commun.EbliLib;
import org.fudaa.ebli.courbe.EGCourbe;
+import org.fudaa.ebli.ressource.EbliResource;
import org.fudaa.fudaa.crue.common.helper.DialogHelper;
import org.fudaa.fudaa.crue.common.view.ItemVariableView;
import org.fudaa.fudaa.crue.loi.section.ProfilPopupMenuReceiver;
@@ -33,6 +35,7 @@
private InverseProfil inverseAction;
private SimplifyProfil simplifyAction;
+ EbliActionSimple importAction;
private final ProfilSectionTopComponent topComponent;
public ModellingProfilSectionMenuReceiver(ProfilSectionLoiUiController loiUiController, final ProfilSectionTopComponent topComponent) {
@@ -41,11 +44,25 @@
}
@Override
+ protected void addImportItem() {
+ importAction = new EbliActionSimple(NbBundle.getMessage(ModellingProfilSectionMenuReceiver.class, "tableImportAction"),
+ EbliResource.EBLI.getToolIcon("crystal_importer"), "IMPORT") {
+ @Override
+ public void actionPerformed(ActionEvent _e) {
+ topComponent.getLoiUIController().getTableGraphePanel().tableImport();
+ }
+
+ };
+ importAction.setDefaultToolTip("<html>" + EbliLib.getS("Importer depuis un fichier Excel/csv") + "<br><b>" + EbliLib.getS(
+ "Toutes les valeurs actuelles seront remplacées"));
+ popupMenu.add(importAction);
+ }
+
+ @Override
protected void addItems() {
super.addItems();
popupMenu.addSeparator();
inverseAction = new InverseProfil();
-
simplifyAction = new SimplifyProfil();
popupMenu.add(inverseAction);
popupMenu.add(simplifyAction);
@@ -56,6 +73,7 @@
super.updateItemStateBeforeShow();
EGCourbe selectedComponent = getPanel().getGraphe().getSelectedComponent();
final boolean editable = selectedComponent != null && selectedComponent.getModel().isModifiable();
+ importAction.setEnabled(editable);
inverseAction.setEnabled(editable);
simplifyAction.setEnabled(editable);
}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/loi/Bundle.properties
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/loi/Bundle.properties 2016-10-13 08:36:59 UTC (rev 9435)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/loi/Bundle.properties 2016-10-13 08:37:36 UTC (rev 9436)
@@ -66,4 +66,5 @@
simplifySectionProfilAction=Simplifier le profil
seuilSimplifyCasierProfilLabel=Seuil de simplification ProfilCasier
seuilSimplifyProfilSectionLabel=Seuil de simplification ProfilSection
-profileInverseAction=Inverser le profil
\ No newline at end of file
+profileInverseAction=Inverser le profil
+tableImportAction=Importer depuis un fichier Excel/csv
\ No newline at end of file
Modified: trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnableTest.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnableTest.java 2016-10-13 08:36:59 UTC (rev 9435)
+++ trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingListCLimMsProgressRunnableTest.java 2016-10-13 08:37:36 UTC (rev 9436)
@@ -6,7 +6,7 @@
import java.io.File;
import java.io.IOException;
import org.fudaa.ctulu.CtuluLibFile;
-import org.fudaa.fudaa.crue.common.helper.TablerFileReader;
+import org.fudaa.ctulu.table.CtuluExcelCsvFileReader;
import static org.junit.Assert.*;
import org.junit.Test;
@@ -28,7 +28,7 @@
protected void testContent(File f) {
assertNotNull(f);
- String[][] values = new TablerFileReader().readFile(f);
+ String[][] values = new CtuluExcelCsvFileReader(f).readFile();
assertEquals(2, values.length);
assertEquals(5, values[0].length);
assertArrayEquals(new String[]{"A", "", "B", "C", "D"}, values[0]);
Modified: trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/ReportListCLimMsTopExportPopupBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/ReportListCLimMsTopExportPopupBuilder.java 2016-10-13 08:36:59 UTC (rev 9435)
+++ trunk/soft/fudaa-crue/ui-report/src/main/java/org/fudaa/fudaa/crue/report/ReportListCLimMsTopExportPopupBuilder.java 2016-10-13 08:37:36 UTC (rev 9436)
@@ -10,6 +10,7 @@
import javax.swing.JPopupMenu;
import org.fudaa.ctulu.gui.CtuluPopupListener;
import org.fudaa.ctulu.gui.CtuluTableSimpleExporter;
+import org.fudaa.ebli.ressource.EbliResource;
import org.fudaa.fudaa.crue.common.helper.CtuluUIForNetbeans;
import org.fudaa.fudaa.crue.views.LoiDisplayer;
import org.fudaa.fudaa.crue.views.LoiDisplayerInstaller;
@@ -37,7 +38,6 @@
menu.add(createExportMenuItem());
}
-
protected void exportTable() {
DonClimMExportTableModel exportModel = new DonClimMExportTableModel(tc.tableModel, tc.getCcm());
CtuluTableSimpleExporter.doExport(';', exportModel, CtuluUIForNetbeans.DEFAULT);
@@ -45,6 +45,7 @@
protected JMenuItem createExportMenuItem() throws MissingResourceException {
final JMenuItem menuItemExport = new JMenuItem(NbBundle.getMessage(ReportListCLimMsTopExportPopupBuilder.class, "button.export.name"));
+ menuItemExport.setIcon(EbliResource.EBLI.getToolIcon("crystal_exporter"));
menuItemExport.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-10-21 14:42:14
|
Revision: 9447
http://sourceforge.net/p/fudaa/svn/9447
Author: deniger
Date: 2016-10-21 14:42:11 +0000 (Fri, 21 Oct 2016)
Log Message:
-----------
Utilisation de la notation diamond
Modified Paths:
--------------
trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/helper/OrdCalcCloner.java
trunk/soft/fudaa-crue/crue-emh/src/test/java/org/fudaa/dodico/crue/metier/helper/OrdCalcClonerTest.java
trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculNodeFactory.java
Modified: trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/helper/OrdCalcCloner.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/helper/OrdCalcCloner.java 2016-10-21 09:28:45 UTC (rev 9446)
+++ trunk/soft/fudaa-crue/crue-emh/src/main/java/org/fudaa/dodico/crue/metier/helper/OrdCalcCloner.java 2016-10-21 14:42:11 UTC (rev 9447)
@@ -4,11 +4,14 @@
package org.fudaa.dodico.crue.metier.helper;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
+import java.util.logging.Level;
+import java.util.logging.Logger;
import org.fudaa.dodico.crue.common.transformer.TransformerHelper;
import org.fudaa.dodico.crue.metier.comparator.ObjetNommeByNameComparator;
import org.fudaa.dodico.crue.metier.emh.Calc;
@@ -16,6 +19,9 @@
import org.fudaa.dodico.crue.metier.emh.EMHScenario;
import org.fudaa.dodico.crue.metier.emh.OrdCalc;
import org.fudaa.dodico.crue.metier.emh.OrdCalcScenario;
+import org.fudaa.dodico.crue.metier.emh.ui.CalcOrdCalcUiState;
+import org.fudaa.dodico.crue.metier.emh.ui.OrdCalcScenarioUiState;
+import org.fudaa.dodico.crue.metier.etude.ManagerEMHScenario;
/**
*
@@ -25,21 +31,42 @@
public static class Result {
+ /**
+ * contient les ordre de calcul definit dans le scenario*
+ */
public List<OrdCalc> ordCalcs = new ArrayList<>();
+ /**
+ * contient les ordCalc definit dans le fichier ui ocal persistant les editions de l'utilisateur*
+ */
+ public List<OrdCalc> ordCalcsinUI = new ArrayList<>();
+ /**
+ * les calculs dans l ordre attendu.
+ */
public List<Calc> calcs = new ArrayList<>();
}
- public Result cloneAndSort(EMHScenario scenario) {
- return cloneOrdCalcAndCalc(scenario.getDonCLimMScenario(), scenario.getOrdCalcScenario());
+ public Result cloneAndSort(EMHScenario scenario, ManagerEMHScenario managerEMHScenario) {
+ return cloneOrdCalcAndCalc(scenario.getDonCLimMScenario(), scenario.getOrdCalcScenario(), managerEMHScenario.getUiOCalData());
}
- public Result cloneOrdCalcAndCalc(DonCLimMScenario dclm, OrdCalcScenario ocal) {
- Result res = new Result();
+ public Result cloneOrdCalcAndCalc(DonCLimMScenario dclm, OrdCalcScenario ocal, OrdCalcScenarioUiState uiOCalData) {
List<Calc> calcs = dclm.getCalc();
List<Calc> clonedCalcs = new ArrayList<>();
for (Calc calc : calcs) {
clonedCalcs.add(calc.deepClone());
}
+ Result res = null;
+ if (uiOCalData == null) {
+ res = sortCalcWithNoSavedUi(ocal, clonedCalcs);
+ } else {
+ res = sortCalcWithSavedUi(ocal, clonedCalcs, uiOCalData);
+ }
+ return res;
+
+ }
+
+ protected Result sortCalcWithNoSavedUi(OrdCalcScenario ocal, List<Calc> clonedCalcs) {
+ Result res = new Result();
Map<String, Calc> clonedCalcsByName = TransformerHelper.toMapOfNom(clonedCalcs);
List<OrdCalc> ordCalcs = ocal.getOrdCalc();
List<Calc> pseudoPermActivated = new ArrayList<>();
@@ -47,10 +74,10 @@
List<Calc> transActivated = new ArrayList<>();
List<Calc> transNonActivated = new ArrayList<>();
- Set<String> actifCalc = new HashSet<>();
+ Set<String> namesOfActiveCalcul = new HashSet<>();
for (OrdCalc ordCalc : ordCalcs) {
String calcName = ordCalc.getCalc().getNom();
- actifCalc.add(calcName);
+ namesOfActiveCalcul.add(calcName);
final Calc calc = clonedCalcsByName.get(calcName);
res.ordCalcs.add(ordCalc.deepCloneButNotCalc(calc));
if (ordCalc.isPseudoPermanent()) {
@@ -60,7 +87,7 @@
}
}
for (Calc calc : clonedCalcs) {
- if (!actifCalc.contains(calc.getNom())) {
+ if (!namesOfActiveCalcul.contains(calc.getNom())) {
if (calc.isPermanent()) {
pseudoPermNonActivated.add(calc);
} else {
@@ -78,4 +105,59 @@
res.calcs.addAll(transNonActivated);
return res;
}
+
+ protected Result sortCalcWithSavedUi(OrdCalcScenario ocal, List<Calc> clonedCalcs, OrdCalcScenarioUiState uiOCalData) {
+ Result res = new Result();
+ Map<String, Calc> clonedCalcsByName = TransformerHelper.toMapOfNom(clonedCalcs);
+ final List<String> calcNameInOrder = uiOCalData.getCalcNameInOrder();
+ boolean isCoherent = isUiSavedCalcAccordingToCalcs(clonedCalcs, calcNameInOrder);
+ if (!isCoherent) {
+ Logger.getLogger(OrdCalcCloner.class.getName()).log(Level.WARNING, "The ocal ui file is not coherent with the ocal data");
+ return sortCalcWithNoSavedUi(ocal, clonedCalcs);
+ }
+ List<OrdCalc> ordCalcsInScenario = ocal.getOrdCalc();
+ Set<String> namesOfActiveCalcul = new HashSet<>();
+ for (OrdCalc ordCalc : ordCalcsInScenario) {
+ String calcName = ordCalc.getCalc().getNom();
+ namesOfActiveCalcul.add(calcName);
+ final Calc calc = clonedCalcsByName.get(calcName);
+ res.ordCalcs.add(ordCalc.deepCloneButNotCalc(calc));
+ }
+ final List<CalcOrdCalcUiState> uiStates = uiOCalData.getUiStates();
+ for (CalcOrdCalcUiState uiState : uiStates) {
+ final String calcName = uiState.getCalcId();
+ if (!namesOfActiveCalcul.contains(calcName)) {
+ final OrdCalc ordCalcSaved = uiState.getOrdCalc();
+ final Calc calc = clonedCalcsByName.get(calcName);
+ assert calc != null : "uiOrdCalc: should not be null as the method isUiSavedCalcAccordingToCalcs should have tested it";
+ res.ordCalcsinUI.add(ordCalcSaved.deepCloneButNotCalc(calc));
+ }
+ }
+ for (String calcName : calcNameInOrder) {
+ final Calc calc = clonedCalcsByName.get(calcName);
+ assert calc != null : "should not be null as the method isUiSavedCalcAccordingToCalcs should have tested it";
+ res.calcs.add(calc);
+ }
+ return res;
+ }
+
+ /**
+ *
+ * @param clonedCalcs la liste des calculs presents dans l'etude
+ * @param calcNameInOrder la liste des calculs presents dans le fichier ui-ocal permettant de persister les editions de l'utilisateur
+ * @return true si les 2 données sont coherentes et si on peut les utiliser.
+ */
+ protected boolean isUiSavedCalcAccordingToCalcs(Collection<Calc> clonedCalcs, final Collection<String> calcNameInOrder) {
+ //on va d'abord voir si le tout est cohérent:
+ Map<String, Calc> clonedCalcsByName = TransformerHelper.toMapOfNom(clonedCalcs);
+ if (clonedCalcs.size() == calcNameInOrder.size()) {
+ for (String string : calcNameInOrder) {
+ if (!clonedCalcsByName.containsKey(string)) {
+ return false;
+ }
+ }
+ return true;
+ }
+ return false;
+ }
}
Modified: trunk/soft/fudaa-crue/crue-emh/src/test/java/org/fudaa/dodico/crue/metier/helper/OrdCalcClonerTest.java
===================================================================
--- trunk/soft/fudaa-crue/crue-emh/src/test/java/org/fudaa/dodico/crue/metier/helper/OrdCalcClonerTest.java 2016-10-21 09:28:45 UTC (rev 9446)
+++ trunk/soft/fudaa-crue/crue-emh/src/test/java/org/fudaa/dodico/crue/metier/helper/OrdCalcClonerTest.java 2016-10-21 14:42:11 UTC (rev 9447)
@@ -3,12 +3,19 @@
*/
package org.fudaa.dodico.crue.metier.helper;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.List;
import org.fudaa.dodico.crue.config.ccm.CrueConfigMetierLoaderDefaultTest;
+import org.fudaa.dodico.crue.metier.emh.Calc;
import org.fudaa.dodico.crue.metier.emh.CalcPseudoPerm;
import org.fudaa.dodico.crue.metier.emh.CalcPseudoPermBrancheOrificeManoeuvre;
import org.fudaa.dodico.crue.metier.emh.DonCLimMScenario;
import org.fudaa.dodico.crue.metier.emh.OrdCalcPseudoPermIniCalcCI;
+import org.fudaa.dodico.crue.metier.emh.OrdCalcPseudoPermIniCalcPrecedent;
import org.fudaa.dodico.crue.metier.emh.OrdCalcScenario;
+import org.fudaa.dodico.crue.metier.emh.ui.OrdCalcScenarioUiState;
import org.fudaa.dodico.crue.metier.helper.OrdCalcCloner.Result;
import static org.junit.Assert.*;
import org.junit.Test;
@@ -27,18 +34,96 @@
DonCLimMScenario dclm = new DonCLimMScenario();
OrdCalcScenario ocal = new OrdCalcScenario();
CalcPseudoPerm pseudo = new CalcPseudoPerm();
- final CalcPseudoPermBrancheOrificeManoeuvre calcPseudoPermBrancheOrificeManoeuvre = new CalcPseudoPermBrancheOrificeManoeuvre(CrueConfigMetierLoaderDefaultTest.DEFAULT);
+ final CalcPseudoPermBrancheOrificeManoeuvre calcPseudoPermBrancheOrificeManoeuvre = new CalcPseudoPermBrancheOrificeManoeuvre(
+ CrueConfigMetierLoaderDefaultTest.DEFAULT);
pseudo.addCalcPseudoPermBrancheOrificeManoeuvre(calcPseudoPermBrancheOrificeManoeuvre);
OrdCalcPseudoPermIniCalcCI ci = new OrdCalcPseudoPermIniCalcCI();
ci.setCalcPseudoPerm(pseudo);
dclm.addCalcPseudoPerm(pseudo);
ocal.addOrdCalc(ci);
OrdCalcCloner cloner = new OrdCalcCloner();
- Result cloneOrdCalcAndCalc = cloner.cloneOrdCalcAndCalc(dclm, ocal);
+ Result cloneOrdCalcAndCalc = cloner.cloneOrdCalcAndCalc(dclm, ocal, null);
assertEquals(1, cloneOrdCalcAndCalc.calcs.size());
assertEquals(1, cloneOrdCalcAndCalc.ordCalcs.size());
assertTrue(cloneOrdCalcAndCalc.calcs.get(0) == cloneOrdCalcAndCalc.ordCalcs.get(0).getCalc());
assertFalse(cloneOrdCalcAndCalc.calcs.get(0) == pseudo);
assertFalse(cloneOrdCalcAndCalc.ordCalcs.get(0) == ci);
}
+
+ @Test
+ public void testCloneOrdCalcAndCalcUI() {
+ DonCLimMScenario dclm = new DonCLimMScenario();
+ OrdCalcScenario ocal = new OrdCalcScenario();
+ CalcPseudoPerm pseudo = new CalcPseudoPerm();
+ pseudo.setNom("CC_P1");
+ final CalcPseudoPermBrancheOrificeManoeuvre calcPseudoPermBrancheOrificeManoeuvre = new CalcPseudoPermBrancheOrificeManoeuvre(
+ CrueConfigMetierLoaderDefaultTest.DEFAULT);
+ pseudo.addCalcPseudoPermBrancheOrificeManoeuvre(calcPseudoPermBrancheOrificeManoeuvre);
+ OrdCalcPseudoPermIniCalcCI ordCalc = new OrdCalcPseudoPermIniCalcCI();
+ ordCalc.setCalcPseudoPerm(pseudo);
+ dclm.addCalcPseudoPerm(pseudo);
+ ocal.addOrdCalc(ordCalc);
+
+ CalcPseudoPerm pseudo2 = new CalcPseudoPerm();
+ pseudo2.setNom("CC_P2");
+ dclm.addCalcPseudoPerm(pseudo2);
+
+
+ OrdCalcScenarioUiState ui = new OrdCalcScenarioUiState();
+ //ici dans l'ordre on inverse les calcul
+ ui.addCalcOrdCalcUiStates("CC_P2", new OrdCalcPseudoPermIniCalcPrecedent());
+ ui.addCalcOrdCalcUiStates("CC_P1", new OrdCalcPseudoPermIniCalcPrecedent());
+ //donc
+ int idxCCP2 = 0;
+ int idxCCP1 = 1;
+
+ OrdCalcCloner cloner = new OrdCalcCloner();
+ Result cloneOrdCalcAndCalc = cloner.cloneOrdCalcAndCalc(dclm, ocal, ui);
+ //test des calculs:
+ assertEquals(2, cloneOrdCalcAndCalc.calcs.size());
+ //attention l'ordre est inversion
+ assertTrue(cloneOrdCalcAndCalc.calcs.get(idxCCP2) == cloneOrdCalcAndCalc.ordCalcsinUI.get(0).getCalc());
+ assertFalse(cloneOrdCalcAndCalc.calcs.get(idxCCP2) == pseudo2);
+
+ assertTrue(cloneOrdCalcAndCalc.calcs.get(idxCCP1) == cloneOrdCalcAndCalc.ordCalcs.get(0).getCalc());
+ assertFalse(cloneOrdCalcAndCalc.calcs.get(idxCCP1) == pseudo);
+
+ //les ordres de calcul
+ assertEquals(1, cloneOrdCalcAndCalc.ordCalcs.size());
+ assertEquals("CC_P1", cloneOrdCalcAndCalc.ordCalcs.get(0).getCalc().getId());
+ assertTrue(cloneOrdCalcAndCalc.ordCalcs.get(0) instanceof OrdCalcPseudoPermIniCalcCI);
+ assertFalse(cloneOrdCalcAndCalc.ordCalcs.get(0) == ordCalc);
+ //les ordres de calcul UI
+ assertEquals(1, cloneOrdCalcAndCalc.ordCalcsinUI.size());
+ assertEquals("CC_P2", cloneOrdCalcAndCalc.ordCalcsinUI.get(0).getCalc().getId());
+ assertTrue(cloneOrdCalcAndCalc.ordCalcsinUI.get(0) instanceof OrdCalcPseudoPermIniCalcPrecedent);
+
+ }
+
+ @Test
+ public void testIsUiSavedCalcAccordingToCalcs() {
+ OrdCalcCloner cloner = new OrdCalcCloner();
+ List<String> calcInOrder = Arrays.asList("CC_P1", "CC_P2");
+ Collection<Calc> calcs = createCalcs("CC_P1");
+ assertFalse(cloner.isUiSavedCalcAccordingToCalcs(calcs, calcInOrder));
+ calcs = createCalcs("CC_P1", "CC_P2");
+ assertTrue(cloner.isUiSavedCalcAccordingToCalcs(calcs, calcInOrder));
+ calcs = createCalcs("CC_P1", "CC_P3");
+ assertFalse(cloner.isUiSavedCalcAccordingToCalcs(calcs, calcInOrder));
+ }
+
+ private static Calc createCalc(String id) {
+ CalcPseudoPerm res = new CalcPseudoPerm();
+ res.setNom(id);
+ return res;
+ }
+
+ private static Collection<Calc> createCalcs(String... ids) {
+ List<Calc> calcs = new ArrayList<>();
+ for (String id : ids) {
+ calcs.add(createCalc(id));
+ }
+ return calcs;
+ }
+
}
Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculNodeFactory.java
===================================================================
--- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculNodeFactory.java 2016-10-21 09:28:45 UTC (rev 9446)
+++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/CalculNodeFactory.java 2016-10-21 14:42:11 UTC (rev 9447)
@@ -47,6 +47,12 @@
private final DonLoiHYConteneur donLoiHYConteneurCloned;
private final Map<String, Loi> clonedLoisByName;
+ public CalculNodeFactory(OutlineView outlineView) {
+ this.outlineView = outlineView;
+ donLoiHYConteneurCloned = (DonLoiHYConteneur) outlineView.getClientProperty(DonLoiHYConteneur.class);
+ clonedLoisByName = TransformerHelper.toMapOfNom(donLoiHYConteneurCloned.getLois());
+ }
+
protected Children createChildren(Calc calc, Map<Calc, OrdCalc> ordCalcByCalcs, DonLoiHYConteneur donLoiHYConteneur) {
List<Node> nodes = new ArrayList<>();
List<DonCLimM> listeDCLM = calc.getlisteDCLM();
@@ -68,19 +74,14 @@
return NodeHelper.createArray(nodes);
}
- public CalculNodeFactory(OutlineView outlineView) {
- this.outlineView = outlineView;
- donLoiHYConteneurCloned = (DonLoiHYConteneur) outlineView.getClientProperty(DonLoiHYConteneur.class);
- clonedLoisByName = TransformerHelper.toMapOfNom(donLoiHYConteneurCloned.getLois());
- }
-
public List<CalculNode> createNodes() {
if (modellingScenarioService.getScenarioLoaded() == null) {
return Collections.emptyList();
}
List<CalculNode> nodes = new ArrayList<>();
OrdCalcCloner cloner = new OrdCalcCloner();
- Result cloneOrdCalcAndCalc = cloner.cloneAndSort(modellingScenarioService.getScenarioLoaded());
+ Result cloneOrdCalcAndCalc = cloner.
+ cloneAndSort(modellingScenarioService.getScenarioLoaded(), modellingScenarioService.getManagerScenarioLoaded());
final Map<Calc, OrdCalc> ordCalcByCalc = CalcHelper.getOrdCalcByCalc(cloneOrdCalcAndCalc.ordCalcs);
//TODO trier les calculs ici:
final CrueConfigMetier ccm = modellingScenarioService.getSelectedProjet().getPropDefinition();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|