|
From: <de...@us...> - 2012-11-02 18:23:10
|
Revision: 7851
http://fudaa.svn.sourceforge.net/fudaa/?rev=7851&view=rev
Author: deniger
Date: 2012-11-02 18:23:03 +0000 (Fri, 02 Nov 2012)
Log Message:
-----------
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/AbstractLayerSectionController.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerSectionGisBuilder.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerTraceController.java
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/PlanimetryGisModelContainer.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryLigneBriseeLayerModel.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryPointLayerModel.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryTraceLayerModel.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/controller/Bundle.properties
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/AbstractLayerSectionController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/AbstractLayerSectionController.java 2012-11-02 18:10:54 UTC (rev 7850)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/AbstractLayerSectionController.java 2012-11-02 18:23:03 UTC (rev 7851)
@@ -14,13 +14,13 @@
/**
* Un controleur commun pour les traces et section
+ *
* @author deniger ( genesis)
*/
public abstract class AbstractLayerSectionController<L extends ZCalqueAffichageDonnees> extends LayerModelControllerDefault<L> {
SectionUpdaterFromBranche sectionUpdaterFromBranche;
PropertyChangeListener zoomChangedListener = new PropertyChangeListener() {
-
@Override
public void propertyChange(PropertyChangeEvent evt) {
updateIfZoomChanged();
@@ -94,7 +94,7 @@
double rayon = getVisuConfiguration().getNodeConfiguration().getRayon();
lastUsedOffset = GrMorphisme.convertDistanceXY(versReel, rayon);
GISZoneCollectionGeometry rebuild = rebuild(lastUsedOffset);
- rebuild.setGeomModifiable(getGISCollection().isGeomModifiable());
+ rebuild.setGeomModifiable(false);
setGISCollection(rebuild);
}
@@ -108,5 +108,4 @@
sectionUpdaterFromBranche = new SectionUpdaterFromBranche(this);
helper.getBrancheController().addGISListener(sectionUpdaterFromBranche);
}
-
}
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerSectionGisBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerSectionGisBuilder.java 2012-11-02 18:10:54 UTC (rev 7850)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerSectionGisBuilder.java 2012-11-02 18:23:03 UTC (rev 7851)
@@ -21,7 +21,7 @@
* @author deniger ( genesis)
*/
public class LayerSectionGisBuilder {
-
+
public static TObjectDoubleHashMap<RelationEMHSectionDansBranche> getRatio(int position, double minRealDistance,
LayerBrancheController brancheController) {
TObjectDoubleHashMap<RelationEMHSectionDansBranche> res = new TObjectDoubleHashMap<RelationEMHSectionDansBranche>();
@@ -49,7 +49,7 @@
double avalRatio = 1d;
double amontRatio = 0d;
final double length = branche.getLength();
-
+
if (visuLength > minRealDistance) {
amontRatio = minRealDistance / visuLength;
avalRatio = (visuLength - minRealDistance) / visuLength;
@@ -76,11 +76,11 @@
return res;
}
private final PlanimetryController controller;
-
+
public LayerSectionGisBuilder(PlanimetryController controller) {
this.controller = controller;
}
-
+
protected GISZoneCollectionPoint rebuild(double offsetForAmonAvalSection) {
final GISZoneCollectionPoint newSectionCollection = controller.getPlanimetryGisModelContainer().createSectionCollection();
newSectionCollection.setGeomModifiable(true);
@@ -105,6 +105,7 @@
null);
}
}
+ newSectionCollection.setGeomModifiable(false);
return newSectionCollection;
}
}
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerTraceController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerTraceController.java 2012-11-02 18:10:54 UTC (rev 7850)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerTraceController.java 2012-11-02 18:23:03 UTC (rev 7851)
@@ -118,6 +118,13 @@
return relationSectionDansBranche.getEmh();
}
+ @Override
+ public void setEditable(boolean editable) {
+ this.editable = editable;
+ getHelper().getPlanimetryGisModelContainer().setAnglesEditable(editable);
+ getLayer().setActionsEnable(editable);
+ }
+
public void getSelectedEMHs(Collection<Long> uids) {
if (!layer.isVisible() || layer.isSelectionEmpty()) {
return;
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 2012-11-02 18:10:54 UTC (rev 7850)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerTraceGisBuilder.java 2012-11-02 18:23:03 UTC (rev 7851)
@@ -3,6 +3,7 @@
import com.vividsolutions.jts.geom.Coordinate;
import gnu.trove.TObjectDoubleHashMap;
import gnu.trove.TObjectDoubleIterator;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.commons.collections.CollectionUtils;
@@ -10,6 +11,7 @@
import org.fudaa.ctulu.gis.GISPolyligne;
import org.fudaa.ctulu.gis.GISZoneCollectionLigneBrisee;
import org.fudaa.ctulu.gis.GisAbscCurviligneToCoordinate;
+import org.fudaa.dodico.crue.common.Pair;
import org.fudaa.dodico.crue.config.ItemEnum;
import org.fudaa.dodico.crue.metier.emh.CatEMHBranche;
import org.fudaa.dodico.crue.metier.emh.DonPrtGeo;
@@ -26,13 +28,13 @@
* @author deniger ( genesis)
*/
public class LayerTraceGisBuilder {
-
+
private final PlanimetryController controller;
-
+
public LayerTraceGisBuilder(PlanimetryController controller) {
this.controller = controller;
}
-
+
public static double findXmaxLit(List<LitNumerote> litNumerotes, boolean onlyActif) {
double xmax = 0;
boolean first = true;
@@ -46,11 +48,11 @@
} else {
xmax = Math.max(xmax, litNumerote.getLimFin().getAbscisse());
}
-
+
}
return xmax;
}
-
+
public static double findXminLit(List<LitNumerote> litNumerotes, boolean onlyActif) {
double xmin = 0;
boolean first = true;
@@ -64,7 +66,7 @@
} else {
xmin = Math.min(xmin, litNumerote.getLimDeb().getAbscisse());
}
-
+
}
return xmin;
}
@@ -76,14 +78,30 @@
* @return
*/
public GISZoneCollectionLigneBrisee rebuild(double offsetForAmonAvalSection) {
- final GISZoneCollectionLigneBrisee newSectionCollection = controller.getPlanimetryGisModelContainer().createTraceCollection();
+ final GISZoneCollectionLigneBrisee oldSectionCollection = controller.getTraceController().getGISCollection();
+ Map<Long, Pair<Double, Double>> oldAngle = new HashMap<Long, Pair<Double, Double>>();
+ final PlanimetryGisModelContainer planimetryGisModelContainer = controller.getPlanimetryGisModelContainer();
+ if (oldSectionCollection != null && oldSectionCollection.getNumGeometries() > 0) {
+ int nb = oldSectionCollection.getNumGeometries();
+ for (int i = 0; i < nb; i++) {
+ Long uid = planimetryGisModelContainer.getUid(oldSectionCollection, i);
+ if (uid != null) {
+ Double startAngleInDegree = planimetryGisModelContainer.getAngleBegin(oldSectionCollection, i);
+ Double endAngleInDegree = planimetryGisModelContainer.getAngleEnd(oldSectionCollection, i);
+ oldAngle.put(uid, new Pair<Double, Double>(startAngleInDegree, endAngleInDegree));
+ }
+ }
+ }
+
+ final GISZoneCollectionLigneBrisee newSectionCollection = planimetryGisModelContainer.createTraceCollection();
newSectionCollection.setGeomModifiable(true);
final LayerBrancheController brancheController = controller.getBrancheController();
GISZoneCollectionLigneBrisee brancheCollection = brancheController.getBrancheCollection();
int nb = brancheCollection.getNumGeometries();
GisAbscCurviligneToCoordinate.Result tmpResult = new GisAbscCurviligneToCoordinate.Result();
double realDistance = offsetForAmonAvalSection;
-// GrPoint pt = new GrPoint();
+ double defaultAngleInRadians = getTraceConfiguration().getAngleInRadians();
+ double defaultAngleInDegree = getTraceConfiguration().getAngleInDegree();
for (int i = nb - 1; i >= 0; i--) {
CatEMHBranche branche = brancheController.getBranche(i);
GISPolyligne brancheGis = brancheController.getBrancheGis(i);
@@ -106,23 +124,33 @@
if (!tmpResult.isFound()) {
continue;
}
-// pt.initialiseAvec(tmpResult.getCoordinate());
-// intersectionBrancheSection = new Coordinate(tmpResult.getCoordinate());
- GISPolyligne traceGIS = createLine(profilSection, brancheGis, tmpResult);
- newSectionCollection.addPolyligne(traceGIS, controller.getPlanimetryGisModelContainer().buildSectionData(
- sectionDansBranche, branche), null);
+ double startAngleInRadians = defaultAngleInRadians;
+ double startAngleInDegree = defaultAngleInDegree;
+ double endAngleInRadians = defaultAngleInRadians;
+ double endAngleInDegree = defaultAngleInDegree;
+ Pair<Double, Double> angleInDegrees = oldAngle.get(sectionDansBranche.getEmh().getUiId());
+ if (angleInDegrees != null) {
+ startAngleInDegree = angleInDegrees.first;
+ startAngleInRadians = Math.toRadians(startAngleInDegree);
+ endAngleInDegree = angleInDegrees.second;
+ endAngleInRadians = Math.toRadians(endAngleInDegree);
+ }
+ GISPolyligne traceGIS = createLine(profilSection, brancheGis, tmpResult, startAngleInRadians, endAngleInRadians);
+ newSectionCollection.addPolyligne(traceGIS, planimetryGisModelContainer.buildTraceData(
+ sectionDansBranche, branche, startAngleInDegree, endAngleInDegree), null);
}
}
+ newSectionCollection.setGeomModifiable(false);
return newSectionCollection;
-
+
}
-
+
private TraceConfiguration getTraceConfiguration() {
return controller.getVisuConfiguration().getTraceConfiguration();
}
-
+
protected GISPolyligne createLine(DonPrtGeoProfilSection profilSection, GISPolyligne brancheGis,
- GisAbscCurviligneToCoordinate.Result tmpResult) {
+ GisAbscCurviligneToCoordinate.Result tmpResult, double angleStartInRadians, double angleEndInRadians) {
if (profilSection == null) {
return null;
}
@@ -154,8 +182,8 @@
}
}
}
-
-
+
+
int segmentidx = tmpResult.getSegmentidx();
Coordinate amont = brancheGis.getCoordinateN(segmentidx);
Coordinate aval = brancheGis.getCoordinateN(segmentidx + 1);
@@ -173,7 +201,7 @@
}
Map<ItemEnum, DonPrtGeoProfilEtiquette> createMap = DonPrtGeoProfilEtiquette.createMap(profilSection.getEtiquettes());
DonPrtGeoProfilEtiquette axeHyd = createMap.get(controller.getCrueConfigMetier().getLitNomme().getEtiquetteAxeHyd());
-
+
double xAxeHydraulique = (maxMineur + minMineur) / 2;//retrouver la notion d'axe hydraulique...
if (axeHyd != null) {
xAxeHydraulique = axeHyd.getPoint().getXt();
@@ -191,31 +219,33 @@
compute(accrochePt, vxTrace, vyTrace, (xAxeHydraulique - xmax), rg);
compute(accrochePt, vxTrace, vyTrace, (xAxeHydraulique - xmaxActif), rgActif);
compute(accrochePt, vxTrace, vyTrace, (xAxeHydraulique - maxMineur), rgMineur);
- double angle = getTraceConfiguration().getAngleInRadians();
-// angle=0;
- if (angle != 0) {
- final double sinAlpha = Math.sin(angle);
- final double cosAlpha = Math.cos(angle);
+ if (angleStartInRadians != 0) {
+ final double sinAlpha = Math.sin(angleStartInRadians);
+ final double cosAlpha = Math.cos(angleStartInRadians);
if (!rd.equals2D(rdMineur)) {
rotate(rd, rdMineur, cosAlpha, sinAlpha);
rotate(rdActif, rdMineur, cosAlpha, sinAlpha);
}
+ }
+ if (angleEndInRadians != 0) {
+ final double sinAlpha = Math.sin(angleEndInRadians);
+ final double cosAlpha = Math.cos(angleEndInRadians);
if (!rg.equals2D(rgMineur)) {
rotate(rg, rgMineur, cosAlpha, sinAlpha);
rotate(rgActif, rgMineur, cosAlpha, sinAlpha);
}
}
-
+
return (GISPolyligne) GISGeometryFactory.INSTANCE.createLineString(
new Coordinate[]{rd, rdActif, rdMineur, rgMineur, rgActif, rg});
}
-
+
protected void compute(Coordinate base, double vx, double vy, double norm, Coordinate pt) {
pt.x = base.x + vx * norm;
pt.y = base.y + vy * norm;
-
+
}
-
+
private void rotate(Coordinate ptToRotate, Coordinate reference, final double cosAlpha, final double sinAlpha) {
double vx = ptToRotate.x - reference.x;
double vy = ptToRotate.y - reference.y;
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/PlanimetryGisModelContainer.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/PlanimetryGisModelContainer.java 2012-11-02 18:10:54 UTC (rev 7850)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/PlanimetryGisModelContainer.java 2012-11-02 18:23:03 UTC (rev 7851)
@@ -3,8 +3,10 @@
import com.rits.cloning.Cloner;
import java.util.ArrayList;
import java.util.List;
+import org.fudaa.ctulu.editor.CtuluValueEditorDouble;
import org.fudaa.ctulu.editor.CtuluValueEditorString;
import org.fudaa.ctulu.gis.GISAttribute;
+import org.fudaa.ctulu.gis.GISAttributeDouble;
import org.fudaa.ctulu.gis.GISAttributeInterface;
import org.fudaa.ctulu.gis.GISAttributeLong;
import org.fudaa.ctulu.gis.GISAttributeModel;
@@ -38,9 +40,15 @@
*/
public static final int BRANCHE_NOM_POSITION = 3;
public static final int RELATION_SECTION_DANS_BRANCHE_POSITION = 4;
+ public static final int TRACE_ANGLE_BEGIN = 5;
+ public static final int TRACE_ANGLE_END = 6;
GISAttributeLong uid = new GISAttributeLong("uid");
GISAttributeString id = new GISAttributeString(org.openide.util.NbBundle.getMessage(PlanimetryGisModelContainer.class,
- "attributeEMH.Name"));
+ "attributeEMH.Name"));
+ GISAttributeDouble beginAngle = new GISAttributeDouble(org.openide.util.NbBundle.getMessage(PlanimetryGisModelContainer.class,
+ "BeginAngle.Name"), false);
+ GISAttributeDouble endAngle = new GISAttributeDouble(org.openide.util.NbBundle.getMessage(PlanimetryGisModelContainer.class,
+ "EndAngle.Name"), false);
/**
* utilisé par section et trace
*/
@@ -49,7 +57,7 @@
* utilisé par section et trace
*/
GISAttributeString brancheId = new GISAttributeString(NbBundle.getMessage(PlanimetryGisModelContainer.class,
- "attributeBranche.Name"));
+ "attributeBranche.Name"));
/**
* utilise pour recuperer la relation utilisee entre la branche et la section.
*/
@@ -64,8 +72,15 @@
sectionDansBranche.setUserVisible(false);
((CtuluValueEditorString) id.getEditor()).setEditable(false);
((CtuluValueEditorString) brancheId.getEditor()).setEditable(false);
+ setAnglesEditable(false);
}
+ public final void setAnglesEditable(boolean editable) {
+ ((CtuluValueEditorDouble) beginAngle.getEditor()).setEditable(editable);
+ ((CtuluValueEditorDouble) endAngle.getEditor()).setEditable(editable);
+
+ }
+
public void setScenario(EMHScenario scenario) {
this.scenario = scenario;
scenarioInitial = null;
@@ -115,8 +130,17 @@
return (Long) zone.getDataModel(UID_POSITION).getObjectValueAt(idx);
}
+ public Double getAngleBegin(GISZoneCollectionGeometry zone, int idx) {
+ return (Double) zone.getDataModel(TRACE_ANGLE_BEGIN).getObjectValueAt(idx);
+ }
+
+ public Double getAngleEnd(GISZoneCollectionGeometry zone, int idx) {
+ return (Double) zone.getDataModel(TRACE_ANGLE_END).getObjectValueAt(idx);
+ }
+
/**
* ne doit etre appele que pour les sections ou trace de section
+ *
* @param zone
* @param idx
* @return
@@ -127,6 +151,7 @@
/**
* ne doit etre appele que pour les sections ou trace de section
+ *
* @param zone
* @param idx
* @return
@@ -152,7 +177,7 @@
public GISZoneCollectionLigneBrisee createTraceCollection() {
GISZoneCollectionLigneBrisee res = new GISZoneCollectionLigneBrisee();
//attention, l'ordre de ce tableau doit respecter les indices *_POSITION de cette classe.
- res.setAttributes(new GISAttributeInterface[]{uid, id, brancheUid, brancheId, sectionDansBranche}, null);
+ res.setAttributes(new GISAttributeInterface[]{uid, id, brancheUid, brancheId, sectionDansBranche, beginAngle, endAngle}, null);
return res;
}
@@ -183,8 +208,22 @@
return data.toArray();
}
+ public Object[] buildTraceData(RelationEMHSectionDansBranche relation,
+ CatEMHBranche branche, double angleInDegreeBegin, double angleInDegreeEnd) {
+ List data = new ArrayList();
+ CatEMHSection section = relation.getEmh();
+ data.add(section.getUiId());
+ data.add(section.getNom());
+ data.add(branche.getUiId());
+ data.add(branche.getNom());
+ data.add(relation);
+ data.add(angleInDegreeBegin);
+ data.add(angleInDegreeEnd);
+ return data.toArray();
+ }
+
public Object[] buildSectionData(RelationEMHSectionDansBranche relation,
- CatEMHBranche branche) {
+ CatEMHBranche branche) {
List data = new ArrayList();
CatEMHSection section = relation.getEmh();
data.add(section.getUiId());
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryLigneBriseeLayerModel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryLigneBriseeLayerModel.java 2012-11-02 18:10:54 UTC (rev 7850)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryLigneBriseeLayerModel.java 2012-11-02 18:23:03 UTC (rev 7851)
@@ -12,8 +12,8 @@
import org.fudaa.ebli.geometrie.GrPolyligne;
/**
- * Un modele que tous les modeles de calques éditables doivent utilsées. Permet de gérer les modifications, en faisant une copie
- * des données avant toutes modifications via l'UI
+ * Un modele que tous les modeles de calques éditables doivent utilsées. Permet de gérer les modifications, en faisant une copie des données avant
+ * toutes modifications via l'UI
*
* @author deniger ( genesis)
*/
@@ -30,6 +30,11 @@
return layerController;
}
+ @Override
+ public void modificationWillBeDone() {
+ getLayerController().changeWillBeDone();
+ }
+
public PlanimetryLigneBriseeLayerModel() {
}
@@ -99,7 +104,7 @@
@Override
public boolean moveAtomic(EbliListeSelectionMultiInterface _selection, double _dx, double _dy, double _dz,
- CtuluCommandContainer _cmd, CtuluUI _ui) {
+ CtuluCommandContainer _cmd, CtuluUI _ui) {
layerController.changeWillBeDone();
final boolean done = super.moveAtomic(_selection, _dx, _dy, _dz, null, _ui);
layerController.changeDone();
@@ -124,7 +129,7 @@
@Override
public boolean rotateAtomic(EbliListeSelectionMultiInterface _selection, double _angRad, double _xreel0, double _yreel0,
- CtuluCommandContainer _cmd, CtuluUI _ui) {
+ CtuluCommandContainer _cmd, CtuluUI _ui) {
layerController.changeWillBeDone();
final boolean done = super.rotateAtomic(_selection, _angRad, _xreel0, _yreel0, null, _ui);
layerController.changeDone();
@@ -133,7 +138,7 @@
@Override
public boolean rotateGlobal(CtuluListSelectionInterface _selection, double _angRad, double _xreel0, double _yreel0,
- CtuluCommandContainer _cmd) {
+ CtuluCommandContainer _cmd) {
layerController.changeWillBeDone();
final boolean done = super.rotateGlobal(_selection, _angRad, _xreel0, _yreel0, null);
layerController.changeDone();
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryPointLayerModel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryPointLayerModel.java 2012-11-02 18:10:54 UTC (rev 7850)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryPointLayerModel.java 2012-11-02 18:23:03 UTC (rev 7851)
@@ -8,8 +8,8 @@
import org.fudaa.ebli.geometrie.GrPoint;
/**
- * Un modele que tous les modeles de calques éditables doivent utilsées. Permet de gérer les modifications, en faisant une copie
- * des données avant toutes modifications via l'UI
+ * Un modele que tous les modeles de calques éditables doivent utilsées. Permet de gérer les modifications, en faisant une copie des données avant
+ * toutes modifications via l'UI
*
* @author deniger ( genesis)
*/
@@ -22,6 +22,11 @@
this.layerController = layerModelController;
}
+ @Override
+ public void modificationWillBeDone() {
+ getLayerController().changeWillBeDone();
+ }
+
public C getLayerController() {
return layerController;
}
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryTraceLayerModel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryTraceLayerModel.java 2012-11-02 18:10:54 UTC (rev 7850)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryTraceLayerModel.java 2012-11-02 18:23:03 UTC (rev 7851)
@@ -3,6 +3,7 @@
import java.util.ArrayList;
import java.util.List;
import org.fudaa.ctulu.CtuluCommandContainer;
+import org.fudaa.ctulu.gis.GISAttributeInterface;
import org.fudaa.ctulu.gis.GISZoneCollectionLigneBrisee;
import org.fudaa.dodico.crue.edition.EditionDelete;
import org.fudaa.dodico.crue.metier.emh.CatEMHSection;
@@ -33,6 +34,27 @@
}
@Override
+ public void attributeValueChangeAction(Object _source, int _indexAtt, GISAttributeInterface _att, int _indexGeom, Object _newValue) {
+ getLayerController().changeWillBeDone();
+ PlanimetryControllerHelper helper = super.getLayerController().getHelper();
+ helper.scenarioEditionStarted();
+ super.attributeValueChangeAction(_source, _indexAtt, _att, _indexGeom, _newValue);
+ getLayerController().rebuildGis();
+ getLayerController().changeDone();
+ getLayerController().getLayer().repaint(0);
+ }
+
+ @Override
+ public void attributeAction(Object _source, int _indexAtt, GISAttributeInterface _att, int _action) {
+ super.attributeAction(_source, _indexAtt, _att, _action);
+ }
+
+ @Override
+ public void objectAction(Object _source, int _idx, Object _obj, int _action) {
+ super.objectAction(_source, _idx, _obj, _action);
+ }
+
+ @Override
public boolean removeLigneBrisee(int[] _idx, CtuluCommandContainer _cmd) {
return removeTraces(_idx, false);
}
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/controller/Bundle.properties
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/controller/Bundle.properties 2012-11-02 18:10:54 UTC (rev 7850)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/controller/Bundle.properties 2012-11-02 18:23:03 UTC (rev 7851)
@@ -1,5 +1,7 @@
attributeBranche.Name=Branche
attributeEMH.Name=Nom EMH
+BeginAngle.Name=Trace angle D\u00e9but
+EndAngle.Name=Trace angle Fin
cqTrace=Trace de ProfilSection
cqBranche=Branches
cqNode=Noeuds
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2014-02-07 09:30:20
|
Revision: 8604
http://sourceforge.net/p/fudaa/svn/8604
Author: deniger
Date: 2014-02-07 09:30:15 +0000 (Fri, 07 Feb 2014)
Log Message:
-----------
CRUE-603
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryVisuPanel.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/Bundle.properties
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryVisuPanel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryVisuPanel.java 2014-02-07 09:27:41 UTC (rev 8603)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryVisuPanel.java 2014-02-07 09:30:15 UTC (rev 8604)
@@ -287,6 +287,7 @@
public void setWokOnOneLayer(boolean restricted) {
getScene().setRestrictedToCalqueActif(restricted);
+ getArbreCalqueModel().setSelectionMultiCalques(!restricted);
getScene().clearSelection();
}
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/Bundle.properties
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/Bundle.properties 2014-02-07 09:27:41 UTC (rev 8603)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/Bundle.properties 2014-02-07 09:30:15 UTC (rev 8604)
@@ -4,8 +4,8 @@
#OpenIDE-Module-Long-Description=
#OpenIDE-Module-Display-Category=
-OneLayer.Action=Travailler sur un calque
-OneLayer.Tooltip=Seuls les objets du calque s\u00e9lectionn\u00e9 seront pris en compte
+OneLayer.Action=S\u00e9lectionner sur un calque
+OneLayer.Tooltip=Limiter la s\u00e9lection des objets dans la vue planim\u00e9trique au seul calque s\u00e9lectionn\u00e9
RebuildLayout.Action=Reconstruire le r\u00e9seau
CheckMinDistance.Action=Assurer une distance minimale
Configure.Action=Configurer l'affichage
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2015-09-09 21:59:57
|
Revision: 9161
http://sourceforge.net/p/fudaa/svn/9161
Author: deniger
Date: 2015-09-09 21:59:55 +0000 (Wed, 09 Sep 2015)
Log Message:
-----------
CRUE-668: sauvegardes des param?\195?\168tres de visibilit?\195?\169 des calques TraceProfils et TraceCasiers
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/LayerVisibilityInfo.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/AbstractGroupExternController.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/GroupExterneMainController.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/PlanimetryController.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryHydraulicGroup.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/ConfigSaverHdydaulicAndVisibility.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/configuration/Bundle.properties
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/LayerVisibilityInfo.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/LayerVisibilityInfo.java 2015-09-09 21:58:34 UTC (rev 9160)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/LayerVisibilityInfo.java 2015-09-09 21:59:55 UTC (rev 9161)
@@ -17,10 +17,34 @@
public final static String VISIBILITY_GROUP_DESSIN = "groupeDessin";
public final static String VISIBILITY_GROUP_SIG_FILE = "groupeFichierSIG";
public final static String VISIBILITY_GROUP_IMAGE_FILE = "groupeImage";
+ public final static String VISIBILITY_GROUP_TRACE_PROFILS = "groupeTraceProfils";
+ public final static String VISIBILITY_GROUP_TRACE_PROFILS_CASIERS = "groupeProfilsCasier";
+ public static Node.Property createGrTraceProfilsProperty(LayerVisibility in) {
+ try {
+ Reflection create = ConfigurationInfoHelper.create("traceProfilsVisible", Boolean.TYPE, in, LayerVisibilityInfo.class);
+ create.setName(VISIBILITY_GROUP_TRACE_PROFILS + ".visible");
+ return create;
+ } catch (NoSuchMethodException noSuchMethodException) {
+ Exceptions.printStackTrace(noSuchMethodException);
+ }
+ return null;
+ }
+
+ public static Node.Property createGrTraceProfilsPropertyCasiers(LayerVisibility in) {
+ try {
+ Reflection create = ConfigurationInfoHelper.create("traceCasiersVisible", Boolean.TYPE, in, LayerVisibilityInfo.class);
+ create.setName(VISIBILITY_GROUP_TRACE_PROFILS_CASIERS + ".visible");
+ return create;
+ } catch (NoSuchMethodException noSuchMethodException) {
+ Exceptions.printStackTrace(noSuchMethodException);
+ }
+ return null;
+ }
+
public static Node.Property createGrHydraulicProperty(LayerVisibility in) {
try {
- Reflection create = ConfigurationInfoHelper.create("grHydraulicVisible", Boolean.TYPE, in, VisuConfigurationInfo.class);
+ Reflection create = ConfigurationInfoHelper.create("grHydraulicVisible", Boolean.TYPE, in, LayerVisibilityInfo.class);
create.setName(VISIBILITY_GROUP_HYDRAULIC + ".visible");
return create;
} catch (NoSuchMethodException noSuchMethodException) {
@@ -31,7 +55,7 @@
public static Node.Property createGrOtherProperty(LayerVisibility in) {
try {
- Reflection create = ConfigurationInfoHelper.create("grOtherObjectVisible", Boolean.TYPE, in, VisuConfigurationInfo.class);
+ Reflection create = ConfigurationInfoHelper.create("grOtherObjectVisible", Boolean.TYPE, in, LayerVisibilityInfo.class);
create.setName(VISIBILITY_GROUP_OTHER + ".visible");
return create;
} catch (NoSuchMethodException noSuchMethodException) {
@@ -42,7 +66,7 @@
public static Node.Property createGrDessinProperty(LayerVisibility in) {
try {
- Reflection create = ConfigurationInfoHelper.create("grDrawVisible", Boolean.TYPE, in, VisuConfigurationInfo.class);
+ Reflection create = ConfigurationInfoHelper.create("grDrawVisible", Boolean.TYPE, in, LayerVisibilityInfo.class);
create.setName(VISIBILITY_GROUP_DESSIN + ".visible");
return create;
} catch (NoSuchMethodException noSuchMethodException) {
@@ -53,7 +77,7 @@
public static Node.Property createGrSIGFIleProperty(LayerVisibility in) {
try {
- Reflection create = ConfigurationInfoHelper.create("grSIGFileVisible", Boolean.TYPE, in, VisuConfigurationInfo.class);
+ Reflection create = ConfigurationInfoHelper.create("grSIGFileVisible", Boolean.TYPE, in, LayerVisibilityInfo.class);
create.setName(VISIBILITY_GROUP_SIG_FILE + ".visible");
return create;
} catch (NoSuchMethodException noSuchMethodException) {
@@ -64,7 +88,7 @@
public static Node.Property createGrImageProperty(LayerVisibility in) {
try {
- Reflection create = ConfigurationInfoHelper.create("grImagesVisible", Boolean.TYPE, in, VisuConfigurationInfo.class);
+ Reflection create = ConfigurationInfoHelper.create("grImagesVisible", Boolean.TYPE, in, LayerVisibilityInfo.class);
create.setName(VISIBILITY_GROUP_IMAGE_FILE + ".visible");
return create;
} catch (NoSuchMethodException noSuchMethodException) {
@@ -75,7 +99,7 @@
public static Node.Property createTraceProperty(LayerVisibility in) {
try {
- Reflection create = ConfigurationInfoHelper.create("traceVisible", Boolean.TYPE, in, VisuConfigurationInfo.class);
+ Reflection create = ConfigurationInfoHelper.create("traceVisible", Boolean.TYPE, in, LayerVisibilityInfo.class);
create.setName(TraceConfigurationInfo.PREFIX_TRACES + ".visible");
return create;
} catch (NoSuchMethodException noSuchMethodException) {
@@ -86,7 +110,7 @@
public static Node.Property createSectionProperty(LayerVisibility in) {
try {
- Reflection create = ConfigurationInfoHelper.create("sectionVisible", Boolean.TYPE, in, VisuConfigurationInfo.class);
+ Reflection create = ConfigurationInfoHelper.create("sectionVisible", Boolean.TYPE, in, LayerVisibilityInfo.class);
create.setName(SectionConfigurationInfo.PREFIX_SECTIONS + ".visible");
return create;
} catch (NoSuchMethodException noSuchMethodException) {
@@ -97,7 +121,7 @@
public static Node.Property createNodeProperty(LayerVisibility in) {
try {
- Reflection create = ConfigurationInfoHelper.create("nodeVisible", Boolean.TYPE, in, VisuConfigurationInfo.class);
+ Reflection create = ConfigurationInfoHelper.create("nodeVisible", Boolean.TYPE, in, LayerVisibilityInfo.class);
create.setName(NodeConfigurationInfo.PREFIX_NODES + ".visible");
return create;
} catch (NoSuchMethodException noSuchMethodException) {
@@ -108,7 +132,7 @@
public static Node.Property createBrancheProperty(LayerVisibility in) {
try {
- Reflection create = ConfigurationInfoHelper.create("brancheVisible", Boolean.TYPE, in, VisuConfigurationInfo.class);
+ Reflection create = ConfigurationInfoHelper.create("brancheVisible", Boolean.TYPE, in, LayerVisibilityInfo.class);
create.setName(BrancheConfigurationInfo.PREFIX_BRANCHES + ".visible");
return create;
} catch (NoSuchMethodException noSuchMethodException) {
@@ -119,7 +143,7 @@
public static Node.Property createCasierProperty(LayerVisibility in) {
try {
- Reflection create = ConfigurationInfoHelper.create("casierVisible", Boolean.TYPE, in, VisuConfigurationInfo.class);
+ Reflection create = ConfigurationInfoHelper.create("casierVisible", Boolean.TYPE, in, LayerVisibilityInfo.class);
create.setName(CasierConfigurationInfo.PREFIX_CASIERS + ".visible");
return create;
} catch (NoSuchMethodException noSuchMethodException) {
@@ -130,7 +154,7 @@
public static Node.Property createcondLimiteProperty(LayerVisibility in) {
try {
- Reflection create = ConfigurationInfoHelper.create("condLimitVisible", Boolean.TYPE, in, VisuConfigurationInfo.class);
+ Reflection create = ConfigurationInfoHelper.create("condLimitVisible", Boolean.TYPE, in, LayerVisibilityInfo.class);
create.setName(CondLimitConfigurationInfo.PREFIX_CONDLIMITE + ".visible");
return create;
} catch (NoSuchMethodException noSuchMethodException) {
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/AbstractGroupExternController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/AbstractGroupExternController.java 2015-09-09 21:58:34 UTC (rev 9160)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/AbstractGroupExternController.java 2015-09-09 21:59:55 UTC (rev 9161)
@@ -24,7 +24,8 @@
*
* @author Frederic Deniger
*/
-public abstract class AbstractGroupExternController<T extends AbstractPlanimetryExternLayerGroup> extends Observable implements LayerController {
+public abstract class AbstractGroupExternController<T extends AbstractPlanimetryExternLayerGroup> extends Observable implements LayerController,
+ PropertyChangeListener {
public static final String PROPERTY_LAYER_ADDED = "LayerAdded";
public static final String PROPERTY_LAYER_REMOVED = "LayerRemoved";
@@ -139,6 +140,7 @@
calquesListener = new CalqueAddRemoveListener();
getGroupLayer().addContainerListener(calquesListener);
}
+ getGroupLayer().addPropertyChangeListener(this);
}
public void setArbreEditable(boolean editable) {
@@ -191,25 +193,25 @@
}
- private class CalqueAddRemoveListener implements ContainerListener, PropertyChangeListener {
+ @Override
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (initializing) {
+ return;
+ }
+ AbstractGroupExternController.this.setChanged();
+ AbstractGroupExternController.this.notifyObservers(evt.getPropertyName());
+ }
+ private class CalqueAddRemoveListener implements ContainerListener {
+
public CalqueAddRemoveListener() {
}
@Override
- public void propertyChange(PropertyChangeEvent evt) {
- if (initializing) {
- return;
- }
- AbstractGroupExternController.this.setChanged();
- AbstractGroupExternController.this.notifyObservers(evt.getPropertyName());
- }
-
- @Override
public void componentAdded(ContainerEvent e) {
final BCalque c = (BCalque) e.getChild();
- c.addPropertyChangeListener(this);
+ c.addPropertyChangeListener(AbstractGroupExternController.this);
controller.calqueAdded(c);
if (initializing) {
return;
@@ -222,7 +224,7 @@
public void componentRemoved(ContainerEvent e) {
final BCalque c = (BCalque) e.getChild();
- c.removePropertyChangeListener(this);
+ c.removePropertyChangeListener(AbstractGroupExternController.this);
controller.calqueRemoved(c);
if (initializing) {
return;
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/GroupExterneMainController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/GroupExterneMainController.java 2015-09-09 21:58:34 UTC (rev 9160)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/GroupExterneMainController.java 2015-09-09 21:59:55 UTC (rev 9161)
@@ -66,7 +66,6 @@
controller.groupExternController = groupController;
controller.controllersByName.put(PlanimetryController.NAME_GC_EXTERN, groupController);
-
return groupController;
}
@@ -224,8 +223,10 @@
void apply(LayerVisibility layerVisibility) {
getGroupExtern().setVisible(layerVisibility.isGrOtherObjectVisible());
getSubController(PlanimetryController.NAME_GC_EXTERN_SIG).getGroupLayer().setVisible(layerVisibility.isGrSIGFileVisible());
- getSubController(PlanimetryController.NAME_GC_EXTERN_DRAW).getGroupLayer().setVisible(layerVisibility.isGrImagesVisible());
+ getSubController(PlanimetryController.NAME_GC_EXTERN_DRAW).getGroupLayer().setVisible(layerVisibility.isGrDrawVisible());
getSubController(PlanimetryController.NAME_GC_EXTERN_IMAGES).getGroupLayer().setVisible(layerVisibility.isGrImagesVisible());
+ getSubController(PlanimetryController.NAME_GC_EXTERN_TRACES).getGroupLayer().setVisible(layerVisibility.isTraceProfilsVisible());
+ getSubController(PlanimetryController.NAME_GC_EXTERN_TRACES_CASIERS).getGroupLayer().setVisible(layerVisibility.isTraceCasiersVisible());
}
void fill(LayerVisibility res) {
@@ -233,6 +234,8 @@
res.setGrSIGFileVisible(getSubController(PlanimetryController.NAME_GC_EXTERN_SIG).getGroupLayer().isVisible());
res.setGrDrawVisible(getSubController(PlanimetryController.NAME_GC_EXTERN_DRAW).getGroupLayer().isVisible());
res.setGrImagesVisible(getSubController(PlanimetryController.NAME_GC_EXTERN_IMAGES).getGroupLayer().isVisible());
+ res.setTraceProfilsVisible(getSubController(PlanimetryController.NAME_GC_EXTERN_TRACES).getGroupLayer().isVisible());
+ res.setTraceCasiersVisible(getSubController(PlanimetryController.NAME_GC_EXTERN_TRACES_CASIERS).getGroupLayer().isVisible());
}
Map<String, Boolean> getVisibilityForExternLayer() {
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/PlanimetryController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/PlanimetryController.java 2015-09-09 21:58:34 UTC (rev 9160)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/PlanimetryController.java 2015-09-09 21:59:55 UTC (rev 9161)
@@ -424,25 +424,23 @@
public LayerVisibility getLayerVisibility() {
LayerVisibility res = new LayerVisibility();
- res.setBrancheVisible(getBrancheController().getLayer().isVisible());
- res.setCasierVisible(getCasierController().getLayer().isVisible());
- res.setNodeVisible(getNodeController().getLayer().isVisible());
- res.setSectionVisible(getSectionController().getLayer().isVisible());
- res.setTraceVisible(getTraceController().getLayer().isVisible());
- res.setCondLimitVisible(getcondLimiteController().getLayer().isVisible());
- res.setGrHydraulicVisible(getGroupHydraulicController().groupHydraulic.isVisible());
+ res.setBrancheVisible(getBrancheController().getLayer().isUserVisible());
+ res.setCasierVisible(getCasierController().getLayer().isUserVisible());
+ res.setNodeVisible(getNodeController().getLayer().isUserVisible());
+ res.setSectionVisible(getSectionController().getLayer().isUserVisible());
+ res.setTraceVisible(getTraceController().getLayer().isUserVisible());
+ res.setCondLimitVisible(getcondLimiteController().getLayer().isUserVisible());
getGroupExternController().fill(res);
return res;
}
public void apply(LayerVisibility layerVisibility) {
- getBrancheController().getLayer().setVisible(layerVisibility.isBrancheVisible());
- getCasierController().getLayer().setVisible(layerVisibility.isCasierVisible());
- getNodeController().getLayer().setVisible(layerVisibility.isNodeVisible());
- getSectionController().getLayer().setVisible(layerVisibility.isSectionVisible());
- getTraceController().getLayer().setVisible(layerVisibility.isTraceVisible());
- getcondLimiteController().getLayer().setVisible(layerVisibility.isCondLimitVisible());
- getGroupHydraulicController().groupHydraulic.setVisible(layerVisibility.isGrHydraulicVisible());
+ getBrancheController().getLayer().setUserVisible(layerVisibility.isBrancheVisible());
+ getCasierController().getLayer().setUserVisible(layerVisibility.isCasierVisible());
+ getNodeController().getLayer().setUserVisible(layerVisibility.isNodeVisible());
+ getSectionController().getLayer().setUserVisible(layerVisibility.isSectionVisible());
+ getTraceController().getLayer().setUserVisible(layerVisibility.isTraceVisible());
+ getcondLimiteController().getLayer().setUserVisible(layerVisibility.isCondLimitVisible());
getGroupExternController().apply(layerVisibility);
}
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryHydraulicGroup.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryHydraulicGroup.java 2015-09-09 21:58:34 UTC (rev 9160)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryHydraulicGroup.java 2015-09-09 21:59:55 UTC (rev 9161)
@@ -38,4 +38,14 @@
return true;
}
+
+ @Override
+ public void setUserVisible(boolean _b) {
+ super.setUserVisible(_b);
+
+ final BCalque[] c = getCalques();
+ for (int i = 0; i < c.length; i++) {
+ c[i].setUserVisible(_b);
+ }
+ }
}
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/ConfigSaverHdydaulicAndVisibility.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/ConfigSaverHdydaulicAndVisibility.java 2015-09-09 21:58:34 UTC (rev 9160)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/ConfigSaverHdydaulicAndVisibility.java 2015-09-09 21:59:55 UTC (rev 9161)
@@ -59,8 +59,9 @@
ConfigSaverHelper.addVisibility(res, LayerVisibilityInfo.createGrImageProperty(visibility));
ConfigSaverHelper.addVisibility(res, LayerVisibilityInfo.createGrOtherProperty(visibility));
ConfigSaverHelper.addVisibility(res, LayerVisibilityInfo.createGrSIGFIleProperty(visibility));
+ ConfigSaverHelper.addVisibility(res, LayerVisibilityInfo.createGrTraceProfilsProperty(visibility));
+ ConfigSaverHelper.addVisibility(res, LayerVisibilityInfo.createGrTraceProfilsPropertyCasiers(visibility));
-
return res;
}
}
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/configuration/Bundle.properties
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/configuration/Bundle.properties 2015-09-09 21:58:34 UTC (rev 9160)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/configuration/Bundle.properties 2015-09-09 21:59:55 UTC (rev 9161)
@@ -126,3 +126,7 @@
grImagesVisible.ShortDescription=Images visibles
grHydraulicVisible.DisplayName=Objets hydrauliques visibles
grHydraulicVisible.ShortDescription=Objets hydrauliques visibles
+traceCasiersVisible.DisplayName=TraceCasiers visibles
+traceCasiersVisible.ShortDescription=TraceCasiers visibles
+traceProfilsVisible.DisplayName=TraceProfils visibles
+traceProfilsVisible.ShortDescription=TraceProfils visibles
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <de...@us...> - 2016-12-05 22:43:12
|
Revision: 9475
http://sourceforge.net/p/fudaa/svn/9475
Author: deniger
Date: 2016-12-05 22:43:09 +0000 (Mon, 05 Dec 2016)
Log Message:
-----------
correction sur le parcours de listes
Modified Paths:
--------------
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGisEditor.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryVisuPanel.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerBrancheController.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerCasierController.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerNodeController.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerSectionController.java
trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/Bundle.properties
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGisEditor.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGisEditor.java 2016-12-05 22:42:46 UTC (rev 9474)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGisEditor.java 2016-12-05 22:43:09 UTC (rev 9475)
@@ -3,9 +3,13 @@
*/
package org.fudaa.fudaa.crue.planimetry;
+import com.memoire.bu.BuResource;
+import java.awt.event.ActionEvent;
import javax.swing.JComponent;
import org.fudaa.ebli.calque.ZEbliCalquesPanel;
import org.fudaa.ebli.calque.edition.ZCalqueEditable;
+import org.fudaa.ebli.commun.EbliActionSimple;
+import org.fudaa.fudaa.commun.FudaaLib;
import org.fudaa.fudaa.crue.common.services.SysdocUrlBuilder;
import org.fudaa.fudaa.sig.layer.FSigEditor;
@@ -15,6 +19,8 @@
*/
public class PlanimetryGisEditor extends FSigEditor {
+ private EbliActionSimple exportWithNameAction;
+
public PlanimetryGisEditor(ZEbliCalquesPanel _panel) {
super(_panel, new PlanimetrySceneEditor(_panel.getScene(), _panel));
setExportWithId(true);
@@ -28,7 +34,42 @@
@Override
protected void configureEditorPanel(JComponent jc) {
super.configureEditorPanel(jc);
- SysdocUrlBuilder.installHelpShortcut(jc, SysdocUrlBuilder.getDialogHelpCtxId("bdlEditerDonneesGeolocalisation",null));
+ SysdocUrlBuilder.installHelpShortcut(jc, SysdocUrlBuilder.getDialogHelpCtxId("bdlEditerDonneesGeolocalisation", null));
}
+ /**
+ *
+ * @return une action qui utilise le nom de l'attribut dans l'export. Permet d'etre compatible avec les anciennes versions de GeoGama
+ */
+ public EbliActionSimple getExportWithNameAction() {
+ if (exportWithNameAction == null) {
+ exportWithNameAction = new ExportWithNameAction();
+ }
+ return exportWithNameAction;
+ }
+
+ private class ExportWithNameAction extends EbliActionSimple {
+
+ protected ExportWithNameAction() {
+ super(org.openide.util.NbBundle.getMessage(PlanimetryGisEditor.class, "exportLayerWithName.actionName"), BuResource.BU.getIcon("exporter"),
+ "GIS_NAME_EXPORT");
+ setDefaultToolTip(org.openide.util.NbBundle.getMessage(PlanimetryGisEditor.class, "exportLayerWithName.tooltip"));
+ }
+
+ @Override
+ public void actionPerformed(final ActionEvent _e) {
+ exportSelectedLayer(false);
+ }
+
+ @Override
+ public void updateStateBeforeShow() {
+ super.setEnabled(canExportSelectedLayer());
+ }
+
+ @Override
+ public String getEnableCondition() {
+ return FudaaLib.getS("Sélectionner un calque non vide");
+ }
+ }
+
}
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryVisuPanel.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryVisuPanel.java 2016-12-05 22:42:46 UTC (rev 9474)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryVisuPanel.java 2016-12-05 22:43:09 UTC (rev 9475)
@@ -86,25 +86,6 @@
}
}
- private Action createAction(final String cmd, final KeyStroke ks) {
- Action action = new AbstractAction(cmd) {
- @Override
- public void actionPerformed(ActionEvent e) {
- PlanimetryVisuPanel.this.actionPerformed(new ActionEvent(PlanimetryVisuPanel.this, 0, cmd));
- }
- };
- action.putValue(Action.ACTION_COMMAND_KEY, cmd);
- action.putValue(Action.ACCELERATOR_KEY, ks);
- return action;
- }
-
- public final void installSelectionShortcuts() {
- Action selectAll = createAction("TOUTSELECTIONNER", KeyStroke.getKeyStroke(KeyEvent.VK_A, InputEvent.CTRL_MASK));
- Action invAction = createAction("INVERSESELECTION", KeyStroke.getKeyStroke(KeyEvent.VK_I, InputEvent.CTRL_MASK));
- Action clearAction = createAction("CLEARSELECTION", KeyStroke.getKeyStroke(KeyEvent.VK_A, InputEvent.CTRL_MASK | InputEvent.SHIFT_MASK));
- EbliLib.updateMapKeyStroke(this, new Action[]{selectAll, invAction, clearAction});
- }
-
public static void addSelectionAction(final BuMenu _menu, final boolean _enable, ActionListener _l) {
BuMenuItem it = _menu.addMenuItem(BuResource.BU.getString("Tout sélectionner"), "TOUTSELECTIONNER", false, KeyEvent.VK_A);
it.setEnabled(_enable);
@@ -158,6 +139,30 @@
setAddNbSelectionInInfo(true);
}
+ private Action createAction(final String cmd, final KeyStroke ks) {
+ Action action = new AbstractAction(cmd) {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ PlanimetryVisuPanel.this.actionPerformed(new ActionEvent(PlanimetryVisuPanel.this, 0, cmd));
+ }
+ };
+ action.putValue(Action.ACTION_COMMAND_KEY, cmd);
+ action.putValue(Action.ACCELERATOR_KEY, ks);
+ return action;
+ }
+
+ @Override
+ public PlanimetryGisEditor getEditor() {
+ return (PlanimetryGisEditor) super.getEditor();
+ }
+
+ public final void installSelectionShortcuts() {
+ Action selectAll = createAction("TOUTSELECTIONNER", KeyStroke.getKeyStroke(KeyEvent.VK_A, InputEvent.CTRL_MASK));
+ Action invAction = createAction("INVERSESELECTION", KeyStroke.getKeyStroke(KeyEvent.VK_I, InputEvent.CTRL_MASK));
+ Action clearAction = createAction("CLEARSELECTION", KeyStroke.getKeyStroke(KeyEvent.VK_A, InputEvent.CTRL_MASK | InputEvent.SHIFT_MASK));
+ EbliLib.updateMapKeyStroke(this, new Action[]{selectAll, invAction, clearAction});
+ }
+
public PlanimetryVisuPanelConfigurer getConfigurer() {
return configurer;
}
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerBrancheController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerBrancheController.java 2016-12-05 22:42:46 UTC (rev 9474)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerBrancheController.java 2016-12-05 22:43:09 UTC (rev 9475)
@@ -106,7 +106,9 @@
null,
res.getSigEditAction(),
null,
+ res.getEditor().getExportWithNameAction(),
res.getEditor().getExportAction(),
+ null,
helper.getController().getProjectEMHOnSIGAction(),
helper.getController().getTraceProfilAttachedToBrancheAction(),
null,
@@ -235,7 +237,6 @@
return brancheUpdatingFromPoint;
}
-
public void setBrancheUidUpdatingFromPoint() {
brancheUpdatingFromPoint = true;
}
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerCasierController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerCasierController.java 2016-12-05 22:42:46 UTC (rev 9474)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerCasierController.java 2016-12-05 22:43:09 UTC (rev 9475)
@@ -48,6 +48,7 @@
null,
res.getSigEditAction(),
null,
+ res.getEditor().getExportWithNameAction(),
res.getEditor().getExportAction(),
null,
res.getEditor().getActionDelete(),
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerNodeController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerNodeController.java 2016-12-05 22:42:46 UTC (rev 9474)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerNodeController.java 2016-12-05 22:43:09 UTC (rev 9475)
@@ -54,16 +54,16 @@
nodeController.layer.setName(PlanimetryController.NAME_CQ_NODE);
nodeController.layer.setTitle(NbBundle.getMessage(PlanimetryControllerBuilder.class, PlanimetryController.NAME_CQ_NODE));
nodeController.layer.setActions(new EbliActionInterface[]{
- new OpenEMHAction.Reopen(ctx),
- new OpenEMHAction.NewFrame(ctx),
- null,
- res.getSigEditAction(),
- res.getEditor().getExportAction(),
- null,
- res.getEditor().getActionDelete(),
- res.getPlanimetryVisuController().getDeleteCascade(),
- null,
- res.createFindAction(nodeController.layer)});
+ new OpenEMHAction.Reopen(ctx),
+ new OpenEMHAction.NewFrame(ctx),
+ null,
+ res.getSigEditAction(),
+ res.getEditor().getExportWithNameAction(), res.getEditor().getExportAction(),
+ null,
+ res.getEditor().getActionDelete(),
+ res.getPlanimetryVisuController().getDeleteCascade(),
+ null,
+ res.createFindAction(nodeController.layer)});
ctx.controllersByName.put(PlanimetryController.NAME_CQ_NODE, nodeController);
return nodeController;
}
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerSectionController.java
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerSectionController.java 2016-12-05 22:42:46 UTC (rev 9474)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/LayerSectionController.java 2016-12-05 22:43:09 UTC (rev 9475)
@@ -1,20 +1,11 @@
package org.fudaa.fudaa.crue.planimetry.controller;
-import gnu.trove.TIntArrayList;
-import java.util.Arrays;
import java.util.Collection;
-import java.util.HashSet;
import java.util.List;
-import java.util.Set;
import org.fudaa.ctulu.gis.GISZoneCollectionGeometry;
import org.fudaa.ctulu.gis.GISZoneCollectionPoint;
import org.fudaa.dodico.crue.common.transformer.ToStringInternationalizable;
import org.fudaa.dodico.crue.metier.emh.EMH;
-import org.fudaa.dodico.crue.metier.emh.EnumCatEMH;
-import org.fudaa.dodico.crue.metier.emh.EnumSectionType;
-import org.fudaa.dodico.crue.metier.emh.RelationEMHSectionDansBranche;
-import org.fudaa.dodico.crue.metier.helper.EMHHelper;
-import org.fudaa.ebli.calque.edition.ZModelePointEditable;
import org.fudaa.ebli.commun.EbliActionInterface;
import org.fudaa.fudaa.crue.planimetry.PlanimetryVisuPanel;
import org.fudaa.fudaa.crue.planimetry.action.OpenEMHAction;
@@ -46,6 +37,7 @@
new OpenEMHAction.NewFrame(ctx),
null,
res.getSigEditAction(),
+ res.getEditor().getExportWithNameAction(),
res.getEditor().getExportAction(),
null,
res.getEditor().getActionDelete(),
Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/Bundle.properties
===================================================================
--- trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/Bundle.properties 2016-12-05 22:42:46 UTC (rev 9474)
+++ trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/Bundle.properties 2016-12-05 22:43:09 UTC (rev 9475)
@@ -23,3 +23,5 @@
accroche.casier=Accroche: Casier {0}, sommet {1}
accroche.section=Accroche: Section {0}
+exportLayerWithName.actionName=Exporter (Compatible GeoGama)
+exportLayerWithName.tooltip=Exporter les donn\u00e9es dans un format compatible avec GeoGama
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|