From: <de...@us...> - 2012-05-16 16:41:01
|
Revision: 7211 http://fudaa.svn.sourceforge.net/fudaa/?rev=7211&view=rev Author: deniger Date: 2012-05-16 16:40:51 +0000 (Wed, 16 May 2012) Log Message: ----------- 0.53 Added Paths: ----------- trunk/soft/fudaa-crue/ui-planimetry/ trunk/soft/fudaa-crue/ui-planimetry/pom.xml trunk/soft/fudaa-crue/ui-planimetry/src/ trunk/soft/fudaa-crue/ui-planimetry/src/main/ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/ trunk/soft/fudaa-crue/ui-planimetry/src/main/nbm/ trunk/soft/fudaa-crue/ui-planimetry/src/main/nbm/manifest.mf trunk/soft/fudaa-crue/ui-planimetry/src/main/nbm/module.xml trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/ trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/ trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/ trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/ trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/ trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/Bundle.properties Property changes on: trunk/soft/fudaa-crue/ui-planimetry ___________________________________________________________________ Added: svn:ignore + target Added: trunk/soft/fudaa-crue/ui-planimetry/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/pom.xml (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/pom.xml 2012-05-16 16:40:51 UTC (rev 7211) @@ -0,0 +1,64 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <artifactId>fudaa-crue</artifactId> + <groupId>org.fudaa.soft.fudaa-crue</groupId> + <version>0.53-SNAPSHOT</version> + </parent> + <packaging>nbm</packaging> + <artifactId>ui-planimetry</artifactId> + <name>Crue UI Planimetry</name> + + <properties> + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> + </properties> + + <dependencies> + <dependency> + <groupId>org.fudaa.soft.fudaa-crue</groupId> + <artifactId>crue-server</artifactId> + <scope>provided</scope> + </dependency> +<!-- <dependency> + <groupId>org.fudaa.soft.fudaa-crue</groupId> + <artifactId>crue-server</artifactId> + <type>jar</type> + <scope>test</scope> + <version>${project.version}</version> + </dependency>--> + <dependency> + <groupId>org.fudaa.framework.ebli</groupId> + <artifactId>ebli-2d</artifactId> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>org.fudaa.soft.fudaa-crue</groupId> + <artifactId>ui-wrapper</artifactId> + <type>nbm</type> + </dependency> + <dependency> + <groupId>org.netbeans.api</groupId> + <artifactId>org-netbeans-api-annotations-common</artifactId> + <version>${netbeans.version}</version> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>nbm-maven-plugin</artifactId> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-jar-plugin</artifactId> + <configuration> + <!-- to have the jar plugin pickup the nbm generated manifest --> + <useDefaultManifestFile>true</useDefaultManifestFile> + </configuration> + </plugin> + </plugins> + </build> +</project> Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/nbm/manifest.mf =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/nbm/manifest.mf (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/nbm/manifest.mf 2012-05-16 16:40:51 UTC (rev 7211) @@ -0,0 +1,2 @@ +Manifest-Version: 1.0 +OpenIDE-Module-Localizing-Bundle: org/fudaa/fudaa/crue//Bundle.properties Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/nbm/module.xml =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/nbm/module.xml (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/nbm/module.xml 2012-05-16 16:40:51 UTC (rev 7211) @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<nbm> + <!-- + <moduleType>autoload</moduleType> + <codeNameBase>org.fudaa.fudaa.crue./1</codeNameBase> + <licenseName>Apache License, Version 2.0</licenseName> + <licenseFile>license.txt</licenseFile> + --> +</nbm> Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/Bundle.properties =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/Bundle.properties (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/Bundle.properties 2012-05-16 16:40:51 UTC (rev 7211) @@ -0,0 +1,5 @@ +# Localized module labels. Defaults taken from POM (<name>, <description>, <groupId>) if unset. +#OpenIDE-Module-Name= +#OpenIDE-Module-Short-Description= +#OpenIDE-Module-Long-Description= +#OpenIDE-Module-Display-Category= This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-05-16 16:43:34
|
Revision: 7212 http://fudaa.svn.sourceforge.net/fudaa/?rev=7212&view=rev Author: deniger Date: 2012-05-16 16:43:28 +0000 (Wed, 16 May 2012) Log Message: ----------- 0.53 Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/pom.xml trunk/soft/fudaa-crue/ui-planimetry/pom.xml Modified: trunk/soft/fudaa-crue/crue-server/pom.xml =================================================================== --- trunk/soft/fudaa-crue/crue-server/pom.xml 2012-05-16 16:40:51 UTC (rev 7211) +++ trunk/soft/fudaa-crue/crue-server/pom.xml 2012-05-16 16:43:28 UTC (rev 7212) @@ -25,6 +25,17 @@ </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-jar-plugin</artifactId> + <executions> + <execution> + <goals> + <goal>test-jar</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.6</source> Modified: trunk/soft/fudaa-crue/ui-planimetry/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/pom.xml 2012-05-16 16:40:51 UTC (rev 7211) +++ trunk/soft/fudaa-crue/ui-planimetry/pom.xml 2012-05-16 16:43:28 UTC (rev 7212) @@ -20,13 +20,13 @@ <artifactId>crue-server</artifactId> <scope>provided</scope> </dependency> -<!-- <dependency> + <dependency> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>crue-server</artifactId> - <type>jar</type> + <type>test-jar</type> <scope>test</scope> <version>${project.version}</version> - </dependency>--> + </dependency> <dependency> <groupId>org.fudaa.framework.ebli</groupId> <artifactId>ebli-2d</artifactId> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-05-21 22:02:19
|
Revision: 7213 http://fudaa.svn.sourceforge.net/fudaa/?rev=7213&view=rev Author: deniger Date: 2012-05-21 22:02:11 +0000 (Mon, 21 May 2012) Log Message: ----------- Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/EMH.java trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationTemplate.java trunk/soft/fudaa-crue/ui-planimetry/pom.xml Added Paths: ----------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/IdRegistry.java trunk/soft/fudaa-crue/ui-common/src/main/java/org/netbeans/ trunk/soft/fudaa-crue/ui-common/src/main/java/org/netbeans/swing/ trunk/soft/fudaa-crue/ui-planimetry/nbactions.xml trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/BrancheEdge.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/GisContext.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/NetworkBuilder.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/NodeYFinder.java trunk/soft/fudaa-crue/ui-planimetry/src/test/ trunk/soft/fudaa-crue/ui-planimetry/src/test/java/ trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/ trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/ trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/ trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/ trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/ trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/PlanimetryLauncher.java trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/TestNetworkBuilder.java trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/TestNodeYFinder.java trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/TestScenarioBuilder.java Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/EMH.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/EMH.java 2012-05-16 16:43:28 UTC (rev 7212) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/EMH.java 2012-05-21 22:02:11 UTC (rev 7213) @@ -23,6 +23,7 @@ */ public abstract class EMH implements ObjetNomme, Sortable, ObjetUserActivable { + private Long uiId; /** * @pdOid f01fa378-abc0-4ad4-8861-a0273afadb2e */ @@ -60,6 +61,22 @@ return infosEMHImmutable; } + @UsedByComparison(ignoreInComparison = true) + @Visibility(ihm = false) + public Long getUiId() { + return uiId; + } + + @UsedByComparison(ignoreInComparison = true) + @Visibility(ihm = false) + public boolean isUiIdSet() { + return uiId != null; + } + + public void setUiId(Long uiId) { + this.uiId = uiId; + } + /** * sort infoEMH only. Do not sort the relationEMH. */ @@ -415,8 +432,8 @@ } /** - * - * @return + * + * @return */ @Visibility(ihm = false) @UsedByComparison(ignoreInComparison = true) Added: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/IdRegistry.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/IdRegistry.java (rev 0) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/IdRegistry.java 2012-05-21 22:02:11 UTC (rev 7213) @@ -0,0 +1,37 @@ +package org.fudaa.dodico.crue.metier.emh; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * + * @author deniger ( genesis) + */ +public class IdRegistry { + + private long idx; + Map<Long, EMH> emhByUid = new HashMap<Long, EMH>(); + + public void register(EMH emh) { + if (!emh.isUiIdSet()) { + emh.setUiId(Long.valueOf(idx++)); + } + emhByUid.put(emh.getUiId(), emh); + } + + public EMH getEmh(Long uid) { + return emhByUid.get(uid); + } + + public void unregister(EMH emh) { + emhByUid.remove(emh.getUiId()); + } + + public void registerAll(EMHScenario scenario) { + List<EMH> allSimpleEMH = scenario.getAllEMH(); + for (EMH emh : allSimpleEMH) { + register(emh); + } + } +} Modified: trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationTemplate.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationTemplate.java 2012-05-16 16:43:28 UTC (rev 7212) +++ trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationTemplate.java 2012-05-21 22:02:11 UTC (rev 7213) @@ -193,7 +193,7 @@ } } - protected EMHScenario loadScenario(EMHProjet projet, String nomScenario) { + public static EMHScenario loadScenario(EMHProjet projet, String nomScenario) { ManagerEMHScenario scenarioFrom = projet.getScenario(nomScenario); ScenarioLoader loader = new ScenarioLoader(scenarioFrom, projet, projet.getCoeurConfig(), new CrueOptions()); ScenarioLoaderResult result = loader.load(scenarioFrom.getRunCourant()); Added: trunk/soft/fudaa-crue/ui-planimetry/nbactions.xml =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/nbactions.xml (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/nbactions.xml 2012-05-21 22:02:11 UTC (rev 7213) @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<actions> + + + </actions> Modified: trunk/soft/fudaa-crue/ui-planimetry/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/pom.xml 2012-05-16 16:43:28 UTC (rev 7212) +++ trunk/soft/fudaa-crue/ui-planimetry/pom.xml 2012-05-21 22:02:11 UTC (rev 7213) @@ -25,7 +25,6 @@ <artifactId>crue-server</artifactId> <type>test-jar</type> <scope>test</scope> - <version>${project.version}</version> </dependency> <dependency> <groupId>org.fudaa.framework.ebli</groupId> @@ -42,6 +41,23 @@ <artifactId>org-netbeans-api-annotations-common</artifactId> <version>${netbeans.version}</version> </dependency> + <!--utiliser pour construire les graphes--> + <dependency> + <groupId>jgrapht</groupId> + <artifactId>jgrapht</artifactId> + <version>0.8.3</version> + </dependency> + <dependency> + <groupId>jgraphx</groupId> + <artifactId>jgraphx</artifactId> + <version>1.10.0.5</version> + </dependency> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <scope>test</scope> + </dependency> + </dependencies> <build> @@ -49,6 +65,11 @@ <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>nbm-maven-plugin</artifactId> + <configuration> + <publicPackages> + <publicPackage>org.fudaa.fudaa.crue.planimetry</publicPackage> + </publicPackages> + </configuration> </plugin> <plugin> @@ -61,4 +82,12 @@ </plugin> </plugins> </build> + <repositories> + <repository> + <url>http://repo1.maven.org/maven2/</url> + <id>junit_4</id> + <layout>default</layout> + <name>Repository for library Library[junit_4]</name> + </repository> + </repositories> </project> Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/BrancheEdge.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/BrancheEdge.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/BrancheEdge.java 2012-05-21 22:02:11 UTC (rev 7213) @@ -0,0 +1,40 @@ +package org.fudaa.fudaa.crue.planimetry; + +import org.jgrapht.graph.DefaultWeightedEdge; + +/** + * + * @author deniger ( genesis) + */ +public class BrancheEdge extends DefaultWeightedEdge { + + private final Long id; + + public BrancheEdge(Long id) { + this.id = id; + } + + public Long getId() { + return id; + } + + @Override + public boolean equals(Object obj) { + if (obj == null) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + final BrancheEdge other = (BrancheEdge) obj; + if ((this.id == null) ? (other.id != null) : !this.id.equals(other.id)) { + return false; + } + return true; + } + + @Override + public int hashCode() { + return id.hashCode(); + } +} Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/GisContext.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/GisContext.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/GisContext.java 2012-05-21 22:02:11 UTC (rev 7213) @@ -0,0 +1,57 @@ +package org.fudaa.fudaa.crue.planimetry; + +import java.util.ArrayList; +import java.util.List; +import org.fudaa.ctulu.gis.GISAttributeInterface; +import org.fudaa.ctulu.gis.GISAttributeLong; +import org.fudaa.ctulu.gis.GISAttributeString; +import org.fudaa.ctulu.gis.GISPoint; +import org.fudaa.ctulu.gis.GISZoneCollectionLigneBrisee; +import org.fudaa.ctulu.gis.GISZoneCollectionPoint; +import org.fudaa.dodico.crue.metier.emh.CatEMHBranche; +import org.fudaa.dodico.crue.metier.emh.CatEMHNoeud; + +/** + * + * @author deniger ( genesis) + */ +public class GisContext { + + GISAttributeLong uid = new GISAttributeLong("uid"); + GISAttributeLong nodeUid = new GISAttributeLong("node_uid", true); + GISAttributeString id = new GISAttributeString("id"); + + public GisContext() { + nodeUid.setDefaultValue(Long.valueOf(-1)); + } + + protected GISZoneCollectionPoint createNodeCollection() { + GISZoneCollectionPoint res = new GISZoneCollectionPoint(); + res.setAttributes(new GISAttributeInterface[]{uid, id}, null); + return res; + } + + protected List buildNodeData(CatEMHNoeud nd) { + List data = new ArrayList(); + data.add(Long.valueOf(nd.getUiId())); + data.add(nd.getId()); + return data; + } + + GISZoneCollectionLigneBrisee createEdgeCollection() { + GISZoneCollectionLigneBrisee res = new GISZoneCollectionLigneBrisee(); + res.setAttributes(new GISAttributeInterface[]{uid, id, nodeUid}, null); + return res; + } + + Object[] buildEdgeData(CatEMHBranche branche, int size) { + List data = new ArrayList(); + data.add(Long.valueOf(branche.getUiId())); + data.add(branche.getId()); + Object[] nodeUid = new Object[size]; + nodeUid[0] = branche.getNoeudAmont().getUiId(); + nodeUid[nodeUid.length - 1] = branche.getNoeudAval().getUiId(); + data.add(nodeUid); + return data.toArray(); + } +} Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/NetworkBuilder.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/NetworkBuilder.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/NetworkBuilder.java 2012-05-21 22:02:11 UTC (rev 7213) @@ -0,0 +1,270 @@ +package org.fudaa.fudaa.crue.planimetry; + +import com.mxgraph.layout.hierarchical.mxHierarchicalLayout; +import com.mxgraph.model.mxGeometry; +import com.mxgraph.model.mxICell; +import com.mxgraph.util.mxPoint; +import com.mxgraph.view.mxGraph; +import com.vividsolutions.jts.geom.Coordinate; +import com.vividsolutions.jts.geom.Envelope; +import gnu.trove.TObjectDoubleHashMap; +import java.awt.Color; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; +import javax.swing.JDialog; +import javax.swing.SwingConstants; +import org.fudaa.ctulu.CtuluTroveProcedure; +import org.fudaa.ctulu.gis.GISGeometryFactory; +import org.fudaa.ctulu.gis.GISPoint; +import org.fudaa.ctulu.gis.GISZoneCollectionLigneBrisee; +import org.fudaa.ctulu.gis.GISZoneCollectionPoint; +import org.fudaa.ctulu.gui.CtuluUIDialog; +import org.fudaa.dodico.crue.metier.emh.CatEMHBranche; +import org.fudaa.dodico.crue.metier.emh.CatEMHNoeud; +import org.fudaa.dodico.crue.metier.emh.EMHScenario; +import org.fudaa.dodico.crue.metier.emh.IdRegistry; +import org.fudaa.dodico.crue.metier.emh.RelationEMHSectionDansBranche; +import org.fudaa.ebli.calque.ZCalqueLigneBrisee; +import org.fudaa.ebli.calque.ZCalquePoint; +import org.fudaa.ebli.calque.ZEbliCalquesPanel; +import org.fudaa.ebli.calque.edition.ZModeleLigneBriseeEditable; +import org.fudaa.ebli.calque.edition.ZModelePointEditable; +import org.fudaa.ebli.trace.TraceIcon; +import org.fudaa.ebli.trace.TraceIconModel; +import org.jgrapht.alg.ConnectivityInspector; +import org.jgrapht.graph.DirectedMultigraph; +import org.jgrapht.graph.DirectedWeightedMultigraph; + +/** + * + * @author deniger ( genesis) + */ +public class NetworkBuilder { + + public static class Result { + + private final IdRegistry idRegistry; + GisContext context = new GisContext(); + private final GISZoneCollectionPoint nodes = context.createNodeCollection(); + final GISZoneCollectionLigneBrisee edges = context.createEdgeCollection(); + + public Result(IdRegistry idRegistry) { + this.idRegistry = idRegistry; + } + + public GISZoneCollectionLigneBrisee getEdges() { + return edges; + } + + protected GISPoint addNode(double x, double y, CatEMHNoeud nd) { + nodes.add(x, y, 0, context.buildNodeData(nd), null); + return nodes.get(nodes.getNbGeometries() - 1); + } + + protected void addEdge(List<Coordinate> finalCoordinate, CatEMHBranche branche) { + edges.addPolyligne(GISGeometryFactory.INSTANCE.createLineString(finalCoordinate.toArray( + new Coordinate[finalCoordinate.size()])), context.buildEdgeData(branche, finalCoordinate.size()), null); + + } + + public GISZoneCollectionPoint getNodes() { + return nodes; + } + } + + public ZEbliCalquesPanel buildCalque(EMHScenario scenario, final IdRegistry idRegistry) { + Result buildNewGisData = buildNewGisData(scenario, idRegistry); + ZEbliCalquesPanel res = new ZEbliCalquesPanel(new CtuluUIDialog(new JDialog())); + final ZCalquePoint zCalquePoint = new ZCalquePoint(new ZModelePointEditable(buildNewGisData.nodes)); + zCalquePoint.setIconModel(0, new TraceIconModel(TraceIcon.CARRE_PLEIN, 10, Color.red)); + res.addCalque(zCalquePoint); + res.addCalque(new ZCalqueLigneBrisee(new ZModeleLigneBriseeEditable(buildNewGisData.edges))); + return res; + } + + Result buildNewGisData(EMHScenario scenario, final IdRegistry idRegistry) { + DirectedMultigraph<Long, Long> initGraphe = new DirectedMultigraph<Long, Long>(Long.class); + List<CatEMHBranche> branches = scenario.getBranches(); + Set<Long> addedNode = new HashSet<Long>(); + for (CatEMHBranche branche : branches) { + if (branche.getActuallyActive()) { + Long parentNode = branche.getNoeudAmont().getUiId(); + Long childNode = branche.getNoeudAval().getUiId(); + if (!addedNode.contains(parentNode)) { + addedNode.add(parentNode); + initGraphe.addVertex(parentNode); + } + if (!addedNode.contains(childNode)) { + addedNode.add(childNode); + initGraphe.addVertex(childNode); + } + initGraphe.addEdge(parentNode, childNode, branche.getUiId()); + } + } + ConnectivityInspector subGraphes = new ConnectivityInspector(initGraphe); + List<Set<Long>> connectedVertices = subGraphes.connectedSets(); + ConnectedGraphBuilder graphesBuilder = new ConnectedGraphBuilder(connectedVertices, scenario); + for (CatEMHBranche branche : branches) { + graphesBuilder.processBranche(branche); + } + Result res = new Result(idRegistry); + int bigger = graphesBuilder.getBigger(); + DirectedWeightedMultigraph<Long, BrancheEdge> graph = graphesBuilder.getGraph(bigger); + buildGisData(graph, res, 0, 0); + int nb = graphesBuilder.getNb(); + for (int i = 0; i < nb; i++) { + if (i == bigger) { + continue; + } + Envelope envelopeInternal = res.edges.getEnvelopeInternal(); + double xOffset = envelopeInternal.getMaxX() + 100; + buildGisData(graphesBuilder.getGraph(i), res, xOffset, 0); + } + return res; + } + + private void buildGisData(DirectedWeightedMultigraph<Long, BrancheEdge> graph, Result res, double globalXOffset, + double globalYOffset) { + mxGraph mxGraphe = new mxGraph(); + NodeYFinder ys = new NodeYFinder(); + TObjectDoubleHashMap<Long> findYs = ys.findYs(graph); + Set<Long> vertexSet = graph.vertexSet(); + Map<Long, mxICell> mxCellByNoeudId = new HashMap<Long, mxICell>(); + Map<Long, mxICell> mxCellByBrancheId = new HashMap<Long, mxICell>(); + for (Iterator<Long> it = vertexSet.iterator(); it.hasNext();) { + Long vertexId = it.next(); + double y = findYs.get(vertexId); + mxICell insertVertex = (mxICell) mxGraphe.insertVertex(mxGraphe.getDefaultParent(), vertexId.toString(), vertexId, 0, y, 1, + 1, + null); + mxCellByNoeudId.put(vertexId, insertVertex); + } + Set<BrancheEdge> edgeSet = graph.edgeSet(); + for (BrancheEdge brancheEdge : edgeSet) { + final Long id = brancheEdge.getId(); + mxICell insertEdge = (mxICell) mxGraphe.insertEdge(mxGraphe.getDefaultParent(), id.toString(), id, + mxCellByNoeudId.get(graph.getEdgeSource( + brancheEdge)), + mxCellByNoeudId.get(graph.getEdgeTarget(brancheEdge)), + null); + insertEdge.getGeometry().setHeight(graph.getEdgeWeight(brancheEdge)); + mxCellByBrancheId.put(id, insertEdge); + } + mxHierarchicalLayout layout = new mxHierarchicalLayout(mxGraphe); + layout.setOrientation(SwingConstants.NORTH); + layout.setParallelEdgeSpacing(100); + layout.setResizeParent(true); + layout.setLayoutFromSinks(true); + layout.execute(mxGraphe.getDefaultParent()); + + + CtuluTroveProcedure.DoubleMaxValue procedure = new CtuluTroveProcedure.DoubleMaxValue(); + findYs.forEachValue(procedure); + + Map<Long, GISPoint> node = new HashMap<Long, GISPoint>(); + for (Entry<Long, mxICell> elem : mxCellByNoeudId.entrySet()) { + double x = globalXOffset + elem.getValue().getGeometry().getCenterX(); + double y = globalYOffset + findYs.get(elem.getKey()); + GISPoint addNode = res.addNode(x, y, (CatEMHNoeud) res.idRegistry.getEmh(elem.getKey())); + node.put(elem.getKey(), addNode); + } + + for (BrancheEdge brancheEdge : edgeSet) { + final Long id = brancheEdge.getId(); + mxICell brancheCell = mxCellByBrancheId.get(id); + Long sourceVertex = graph.getEdgeSource(brancheEdge); + Long targetVertex = graph.getEdgeTarget(brancheEdge); + final mxGeometry geometry = brancheCell.getGeometry(); + List<mxPoint> points = geometry.getPoints(); + List<Coordinate> finalCoordinate = new ArrayList<Coordinate>(); + final Coordinate amontRealCoordinate = node.get(sourceVertex).getCoordinate(); + final mxPoint sourcePoint = points.get(0); + final Coordinate avalRealCoordinate = node.get(targetVertex).getCoordinate(); + final mxPoint targetPoint = points.get(points.size() - 1); + double yRatio = (avalRealCoordinate.y - amontRealCoordinate.y) / (targetPoint.getY() - sourcePoint.getY()); + finalCoordinate.add(amontRealCoordinate); + for (int i = 1; i < points.size() - 1; i++) { + mxPoint pt = points.get(i); + double y = amontRealCoordinate.y + (pt.getY() - sourcePoint.getY()) * yRatio; + Coordinate c = new Coordinate(pt.getX(), y); + finalCoordinate.add(c); + } + finalCoordinate.add(avalRealCoordinate); + res.addEdge(finalCoordinate, (CatEMHBranche) res.idRegistry.getEmh(id)); + } + } + + private static class ConnectedGraphBuilder { + + private final List<Set<Long>> connectedVertices; + List<DirectedWeightedMultigraph<Long, BrancheEdge>> graphes; + private final EMHScenario scenario; + + public ConnectedGraphBuilder(List<Set<Long>> connectedVertices, final EMHScenario scenario) { + this.connectedVertices = connectedVertices; + this.scenario = scenario; + graphes = new ArrayList<DirectedWeightedMultigraph<Long, BrancheEdge>>(); + for (Set<Long> vertices : connectedVertices) { + final DirectedWeightedMultigraph<Long, BrancheEdge> graph = new DirectedWeightedMultigraph<Long, BrancheEdge>( + BrancheEdge.class); + graphes.add(graph); + for (Long id : vertices) { + graph.addVertex(id); + } + } + } + + public DirectedWeightedMultigraph<Long, BrancheEdge> getGraph(int i) { + return graphes.get(i); + } + + public int getNb() { + return graphes.size(); + } + + public int getBigger() { + if (graphes.isEmpty()) { + return -1; + } + int res = 0; + int maxNbEdges = graphes.get(0).edgeSet().size(); + for (int i = 1; i < graphes.size(); i++) { + int nbEdges = graphes.get(i).edgeSet().size(); + if (nbEdges > maxNbEdges) { + maxNbEdges = nbEdges; + res = i; + } + } + return res; + } + + public void processBranche(CatEMHBranche branche) { + DirectedWeightedMultigraph<Long, BrancheEdge> graph = findGraph(branche.getNoeudAmont().getUiId()); + final BrancheEdge edge = new BrancheEdge(branche.getUiId()); + graph.addEdge(branche.getNoeudAmont().getUiId(), branche.getNoeudAval().getUiId(), edge); + List<RelationEMHSectionDansBranche> listeSectionsSortedXP = branche.getListeSectionsSortedXP( + scenario.getPropertyDefinitionContainer()); + double w = 0; + if (listeSectionsSortedXP.size() > 0) { + w = listeSectionsSortedXP.get(listeSectionsSortedXP.size() - 1).getXp(); + } + graph.setEdgeWeight(edge, w); + } + + private DirectedWeightedMultigraph<Long, BrancheEdge> findGraph(Long noeudAmontId) { + int nb = connectedVertices.size(); + for (int i = 0; i < nb; i++) { + if (connectedVertices.get(i).contains(noeudAmontId)) { + return graphes.get(i); + } + } + return null; + } + } +} Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/NodeYFinder.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/NodeYFinder.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/NodeYFinder.java 2012-05-21 22:02:11 UTC (rev 7213) @@ -0,0 +1,63 @@ +package org.fudaa.fudaa.crue.planimetry; + +import gnu.trove.TObjectDoubleHashMap; +import gnu.trove.TObjectDoubleIterator; +import java.util.ArrayList; +import java.util.List; +import java.util.Set; +import org.jgrapht.graph.DirectedWeightedMultigraph; + +/** + * + * @author deniger ( genesis) + */ +public class NodeYFinder { + + public TObjectDoubleHashMap<Long> findYs(DirectedWeightedMultigraph<Long, BrancheEdge> graph) { + TObjectDoubleHashMap<Long> ys = new TObjectDoubleHashMap<Long>(); + List<BrancheEdge> edgeSet = new ArrayList<BrancheEdge>(graph.edgeSet()); + BrancheEdge firstEdge = edgeSet.get(0); + Long currentVertex = graph.getEdgeSource(firstEdge); + ys.put(currentVertex, 0); + ComputeResult result = new ComputeResult(); + result.ys = ys; + compute(0, currentVertex, result, graph); + //on remets a zero + for (TObjectDoubleIterator it = ys.iterator(); it.hasNext();) { + it.advance(); + it.setValue(it.value() - result.lower); + } + return result.ys; + + + } + + private static class ComputeResult { + + TObjectDoubleHashMap<Long> ys; + double lower; + } + + private void compute(double currentYs, Long vertex, ComputeResult result, + DirectedWeightedMultigraph<Long, BrancheEdge> graph) { + Set<BrancheEdge> edgesOf = graph.edgesOf(vertex); + for (BrancheEdge edge : edgesOf) { + Long vertexAmont = graph.getEdgeSource(edge); + Long vertexAval = graph.getEdgeTarget(edge); + double distance = graph.getEdgeWeight(edge); + if (!vertexAmont.equals(vertex) && !result.ys.contains(vertexAmont)) { + double newYs = currentYs + distance; + result.lower = Math.min(newYs, result.lower); + result.ys.put(vertexAmont, newYs); + compute(newYs, vertexAmont, result, graph); + } + if (!vertexAval.equals(vertex) && !result.ys.contains(vertexAval)) { + double newYs = currentYs - distance; + result.lower = Math.min(newYs, result.lower); + result.ys.put(vertexAval, newYs); + compute(newYs, vertexAval, result, graph); + } + + } + } +} Added: trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/PlanimetryLauncher.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/PlanimetryLauncher.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/PlanimetryLauncher.java 2012-05-21 22:02:11 UTC (rev 7213) @@ -0,0 +1,43 @@ +package org.fudaa.fudaa.crue.planimetry; + +import java.awt.Dimension; +import java.awt.EventQueue; +import javax.swing.JFrame; +import org.fudaa.dodico.crue.metier.emh.EMHScenario; +import org.fudaa.dodico.crue.metier.emh.IdRegistry; +import org.fudaa.ebli.calque.ZEbliCalquesPanel; + +/** + * + * @author deniger ( genesis) + */ +public class PlanimetryLauncher { + + public static void main(String[] args) { + EMHScenario scenario = TestScenarioBuilder.buildDefaultScenario(); + NetworkBuilder builder = new NetworkBuilder(); + IdRegistry registry = new IdRegistry(); + registry.registerAll(scenario); + final ZEbliCalquesPanel panel = builder.buildCalque(scenario, registry); + final JFrame frame = new JFrame(); + frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + frame.setContentPane(panel); + frame.setPreferredSize(new Dimension(400, 500)); + frame.setSize(new Dimension(400, 500)); + EventQueue.invokeLater(new Runnable() { + + @Override + public void run() { + frame.setVisible(true); + } + }); + EventQueue.invokeLater(new Runnable() { + + @Override + public void run() { + panel.restaurer(); + } + }); + + } +} Added: trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/TestNetworkBuilder.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/TestNetworkBuilder.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/TestNetworkBuilder.java 2012-05-21 22:02:11 UTC (rev 7213) @@ -0,0 +1,76 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package org.fudaa.fudaa.crue.planimetry; + +import org.fudaa.ctulu.gis.GISAttributeModel; +import org.fudaa.ctulu.gis.GISAttributeModelLongArray; +import org.fudaa.ctulu.gis.GISZoneCollection; +import org.fudaa.ctulu.gis.GISZoneCollectionLigneBrisee; +import org.fudaa.ctulu.gis.GISZoneCollectionPoint; +import org.fudaa.dodico.crue.metier.emh.CatEMHBranche; +import org.fudaa.dodico.crue.metier.emh.EMH; +import org.fudaa.dodico.crue.metier.emh.EMHScenario; +import org.fudaa.dodico.crue.metier.emh.IdRegistry; +import org.fudaa.fudaa.crue.planimetry.NetworkBuilder.Result; +import org.junit.Test; +import static org.junit.Assert.*; + +/** + * + * @author deniger ( genesis) + */ +public class TestNetworkBuilder { + + public TestNetworkBuilder() { + } + + @Test + public void testBuildNewGisData() { + EMHScenario scenario = TestScenarioBuilder.buildDefaultScenario(); + IdRegistry registry = new IdRegistry(); + registry.registerAll(scenario); + NetworkBuilder builder = new NetworkBuilder(); + Result gisData = builder.buildNewGisData(scenario, registry); + GISZoneCollectionLigneBrisee edges = gisData.getEdges(); + assertEquals(5, edges.getNbGeometries()); + testIdsAndUids(edges, registry); + GISZoneCollectionPoint nodes = gisData.getNodes(); + assertEquals(7, nodes.getNbGeometries()); + testIdsAndUids(nodes, registry); + GISAttributeModel uids = edges.getDataModel(0); + GISAttributeModel nodes_uids = edges.getDataModel(2); + int nb = nodes_uids.getSize(); + assertEquals(edges.getNumGeometries(), nodes_uids.getSize()); + for (int i = 0; i < nb; i++) { + Long uid = (Long) uids.getObjectValueAt(i); + GISAttributeModelLongArray nodeUids = (GISAttributeModelLongArray) nodes_uids.getObjectValueAt(i); + int nbNodes = nodeUids.getSize(); + assertTrue(nodeUids.getValue(0) >= 0); + assertTrue(nodeUids.getValue(nbNodes - 1) >= 0); + CatEMHBranche emh = (CatEMHBranche) registry.getEmh(uid); + assertEquals(emh.getNoeudAmont().getUiId().longValue(), nodeUids.getValue(0)); + assertEquals(emh.getNoeudAval().getUiId().longValue(), nodeUids.getValue(nbNodes - 1)); + for (int nodeIdx = 1; nodeIdx < nbNodes - 1; nodeIdx++) { + assertEquals(-1, nodeUids.getValue(nodeIdx)); + } + + } + + } + + private void testIdsAndUids(GISZoneCollection collection, IdRegistry registry) { + GISAttributeModel uids = collection.getDataModel(0); + GISAttributeModel ids = collection.getDataModel(1); + assertEquals(collection.getNumGeometries(), uids.getSize()); + assertEquals(collection.getNumGeometries(), ids.getSize()); + for (int i = 0; i < uids.getSize(); i++) { + Long uid = (Long) uids.getObjectValueAt(i); + assertNotNull(uid); + EMH emh = registry.getEmh(uid); + String id = (String) ids.getObjectValueAt(i); + assertEquals(emh.getId(), id); + } + } +} Added: trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/TestNodeYFinder.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/TestNodeYFinder.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/TestNodeYFinder.java 2012-05-21 22:02:11 UTC (rev 7213) @@ -0,0 +1,54 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package org.fudaa.fudaa.crue.planimetry; + +import gnu.trove.TObjectDoubleHashMap; +import org.jgrapht.graph.DirectedWeightedMultigraph; +import org.junit.Test; +import static org.junit.Assert.*; + +/** + * + * @author deniger ( genesis) + */ +public class TestNodeYFinder { + + public TestNodeYFinder() { + } + + @Test + public void testSomeMethod() { + NodeYFinder yFinder = new NodeYFinder(); + DirectedWeightedMultigraph<Long, BrancheEdge> graph = new DirectedWeightedMultigraph<Long, BrancheEdge>( + BrancheEdge.class); + // |----------------200--------n5 + //n1-----100----n2-------150-----n3 + // |----------------------300-----------n4 + graph.addVertex(1L); + graph.addVertex(2L); + graph.addVertex(3L); + graph.addVertex(4L); + graph.addVertex(5L); + final BrancheEdge b1 = new BrancheEdge(10L); + final BrancheEdge b2 = new BrancheEdge(20L); + final BrancheEdge b3 = new BrancheEdge(30L); + final BrancheEdge b4 = new BrancheEdge(40L); + graph.addEdge(1L, 2L, b1); + graph.addEdge(2L, 3L, b2); + graph.addEdge(2L, 4L, b3); + graph.addEdge(2L, 5L, b4); + graph.setEdgeWeight(b1, 100d); + graph.setEdgeWeight(b2, 150d); + graph.setEdgeWeight(b3, 300d); + graph.setEdgeWeight(b4, 200d); + TObjectDoubleHashMap<Long> findYs = yFinder.findYs(graph); + assertEquals(5, findYs.size()); + assertEquals(0, findYs.get(4L), 1e-3); + assertEquals(300, findYs.get(2L), 1e-3); + assertEquals(150, findYs.get(3L), 1e-3); + assertEquals(400, findYs.get(1L), 1e-3); + assertEquals(100, findYs.get(5L), 1e-3); + } +} Added: trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/TestScenarioBuilder.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/TestScenarioBuilder.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/TestScenarioBuilder.java 2012-05-21 22:02:11 UTC (rev 7213) @@ -0,0 +1,87 @@ +package org.fudaa.fudaa.crue.planimetry; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import org.fudaa.dodico.crue.config.CrueOptions; +import org.fudaa.dodico.crue.config.TestCrueConfigMetierLoaderDefault; +import org.fudaa.dodico.crue.metier.emh.CatEMHBranche; +import org.fudaa.dodico.crue.metier.emh.CatEMHNoeud; +import org.fudaa.dodico.crue.metier.emh.EMHBranchePdc; +import org.fudaa.dodico.crue.metier.emh.EMHModeleBase; +import org.fudaa.dodico.crue.metier.emh.EMHNoeudFactory; +import org.fudaa.dodico.crue.metier.emh.EMHNoeudNiveauContinu; +import org.fudaa.dodico.crue.metier.emh.EMHScenario; +import org.fudaa.dodico.crue.metier.emh.EMHSectionSansGeometrie; +import org.fudaa.dodico.crue.metier.emh.EMHSousModele; +import org.fudaa.dodico.crue.metier.emh.EnumPosSection; +import org.fudaa.dodico.crue.metier.emh.RelationEMHSectionDansBranche; +import org.fudaa.dodico.crue.metier.factory.EMHRelationFactory; + +/** + * + * @author deniger ( genesis) + */ +public class TestScenarioBuilder { + + public static EMHScenario buildDefaultScenario() { + EMHScenario scenario = new EMHScenario(TestCrueConfigMetierLoaderDefault.DEFAULT, new CrueOptions()); + EMHModeleBase modele = new EMHModeleBase(TestCrueConfigMetierLoaderDefault.DEFAULT); + EMHSousModele sousModele = new EMHSousModele(TestCrueConfigMetierLoaderDefault.DEFAULT, new CrueOptions()); + EMHRelationFactory.addRelationContientEMH(scenario, modele); + EMHRelationFactory.addRelationContientEMH(modele, sousModele); + EMHNoeudFactory fac = new EMHNoeudFactory(); + List<EMHNoeudNiveauContinu> nds = new ArrayList<EMHNoeudNiveauContinu>(); + //nd1---Br_1:100----nd2--Br_2:500-------------nd3 + // | + // |---Br_3:200--nd4 + // | + // |---Br_4:300------nd5 + // + //nd6---Br_5:250---nd7 + CatEMHNoeud nd1 = createNode(fac, "Nd_1", sousModele); + CatEMHNoeud nd2 = createNode(fac, "Nd_2", sousModele); + CatEMHNoeud nd3 = createNode(fac, "Nd_3", sousModele); + CatEMHNoeud nd4 = createNode(fac, "Nd_4", sousModele); + CatEMHNoeud nd5 = createNode(fac, "Nd_5", sousModele); + CatEMHNoeud nd6 = createNode(fac, "Nd_6", sousModele); + CatEMHNoeud nd7 = createNode(fac, "Nd_7", sousModele); + addBranche("Br_1", nd1, nd2, 100, sousModele); + addBranche("Br_2", nd2, nd3, 500, sousModele); + addBranche("Br_3", nd2, nd4, 200, sousModele); + addBranche("Br_4", nd2, nd5, 300, sousModele); + addBranche("Br_5", nd6, nd7, 300, sousModele); + return scenario; + } + + private static void addBranche(final String brName, CatEMHNoeud nd1, CatEMHNoeud nd2, double length, EMHSousModele sousModele) { + CatEMHBranche br = new EMHBranchePdc(brName); + br.setUserActive(true); + br.setNoeudAmont(nd1); + br.setNoeudAval(nd2); + addSections(br, length); + EMHRelationFactory.addRelationContientEMH(sousModele, br); + } + + private static void addSections(CatEMHBranche br, double length) { + EMHSectionSansGeometrie sectionAmont = new EMHSectionSansGeometrie("St_" + br.getNom() + "_Amont"); + EMHSectionSansGeometrie sectionAval = new EMHSectionSansGeometrie("St_" + br.getNom() + "_Aval"); + RelationEMHSectionDansBranche sectionAmontRelation = EMHRelationFactory.createSectionDansBranche(br, + false, sectionAmont, + TestCrueConfigMetierLoaderDefault.DEFAULT); + RelationEMHSectionDansBranche sectionAvalRelation = EMHRelationFactory.createSectionDansBranche(br, + false, sectionAval, + TestCrueConfigMetierLoaderDefault.DEFAULT); + sectionAmontRelation.setPos(EnumPosSection.AMONT); + sectionAmontRelation.setXp(0); + sectionAvalRelation.setPos(EnumPosSection.AVAL); + sectionAvalRelation.setXp(length); + br.addListeSections(Arrays.asList(sectionAmontRelation, sectionAvalRelation)); + } + + private static CatEMHNoeud createNode(EMHNoeudFactory fac, final String noeudName, EMHSousModele sousModele) { + CatEMHNoeud nd1 = fac.getCatEMHNoeud(noeudName); + EMHRelationFactory.addRelationContientEMH(sousModele, nd1); + return nd1; + } +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-05-25 17:30:07
|
Revision: 7237 http://fudaa.svn.sourceforge.net/fudaa/?rev=7237&view=rev Author: deniger Date: 2012-05-25 17:29:59 +0000 (Fri, 25 May 2012) Log Message: ----------- Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationV1_1_1.java trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/projet/TestChargementResultats.java trunk/soft/fudaa-crue/pom.xml trunk/soft/fudaa-crue/ui-application/pom.xml trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/post-outputWsmode.xml trunk/soft/fudaa-crue/ui-common/pom.xml trunk/soft/fudaa-crue/ui-modelling/pom.xml trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/BrancheConfiguration.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/NodeConfiguration.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheLayer.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheModel.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryNodeLayer.java trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/PostEmhExplorerTopComponent.java trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/PostReportsTopComponent.java Added Paths: ----------- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/categories/ trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/categories/TestIntegration.java trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/categories/TestUI.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/LigneBriseeConfiguration.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/PointConfiguration.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/LayerModelController.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/LayerModelControllerDefault.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryLigneBriseeLayer.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/PlanimetryPointLayer.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryPointLayerModel.java Removed Paths: ------------- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/common/TestIntegration.java Copied: trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/categories/TestIntegration.java (from rev 7209, trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/common/TestIntegration.java) =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/categories/TestIntegration.java (rev 0) +++ trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/categories/TestIntegration.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -0,0 +1,9 @@ +package org.fudaa.dodico.crue.categories; + +/** + * + * @author deniger ( genesis) + */ +public interface TestIntegration { + +} Added: trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/categories/TestUI.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/categories/TestUI.java (rev 0) +++ trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/categories/TestUI.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -0,0 +1,8 @@ +package org.fudaa.dodico.crue.categories; + +/** + * + * @author deniger ( genesis) + */ +public interface TestUI { +} Deleted: trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/common/TestIntegration.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/common/TestIntegration.java 2012-05-25 17:17:37 UTC (rev 7236) +++ trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/common/TestIntegration.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -1,9 +0,0 @@ -package org.fudaa.dodico.crue.common; - -/** - * - * @author deniger ( genesis) - */ -public interface TestIntegration { - -} Modified: trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationV1_1_1.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationV1_1_1.java 2012-05-25 17:17:37 UTC (rev 7236) +++ trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationV1_1_1.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -10,7 +10,7 @@ import org.fudaa.dodico.crue.projet.coeur.TestCoeurConfig; import org.junit.experimental.categories.Category; -@Category(org.fudaa.dodico.crue.common.TestIntegration.class) +@Category(org.fudaa.dodico.crue.categories.TestIntegration.class) public class TestIntegrationV1_1_1 extends TestIntegrationTemplate { /** Modified: trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/projet/TestChargementResultats.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/projet/TestChargementResultats.java 2012-05-25 17:17:37 UTC (rev 7236) +++ trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/projet/TestChargementResultats.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -35,7 +35,7 @@ * * @author deniger ( genesis) */ -@Category(org.fudaa.dodico.crue.common.TestIntegration.class) +@Category(org.fudaa.dodico.crue.categories.TestIntegration.class) public class TestChargementResultats { static File targetDir; Modified: trunk/soft/fudaa-crue/pom.xml =================================================================== --- trunk/soft/fudaa-crue/pom.xml 2012-05-25 17:17:37 UTC (rev 7236) +++ trunk/soft/fudaa-crue/pom.xml 2012-05-25 17:29:59 UTC (rev 7237) @@ -41,7 +41,7 @@ <module>ui-loader</module> <module>ui-commandline</module> <module>ui-wrapper</module> - <module>ui-planimetry</module> +<!-- <module>ui-planimetry</module>--> </modules> <dependencyManagement> <dependencies> @@ -74,11 +74,6 @@ <artifactId>utils</artifactId> <version>1.07.00</version> </dependency> -<!-- <dependency> - <groupId>org.fudaa.framework.fudaa</groupId> - <artifactId>fudaa-common</artifactId> - <version>${fudaa-common.version}</version> - </dependency>--> <dependency> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>crue-server</artifactId> @@ -132,12 +127,12 @@ <version>${project.version}</version> <type>nbm</type> </dependency> - <dependency> +<!-- <dependency> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>ui-planimetry</artifactId> <version>${project.version}</version> <type>nbm</type> - </dependency> + </dependency>--> <dependency> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>ui-post</artifactId> @@ -202,6 +197,12 @@ <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.12</version> + <configuration> +<!-- par défaut les tests ui sont désactivés--> + <excludedGroups>org.fudaa.dodico.crue.categories.TestUI.class</excludedGroups> + <parallel>methods</parallel> + <threadCount>5</threadCount> + </configuration> </plugin> <plugin> @@ -235,7 +236,7 @@ </plugin> </plugins> </build> - <!--pour �viter de lancer les tests d'int�gration--> + <!--pour eviter de lancer les tests d'integration--> <profiles> <profile> <id>noIntegrationTests</id> @@ -245,7 +246,7 @@ <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> - <excludedGroups>org.fudaa.dodico.crue.common.TestIntegration.class</excludedGroups> + <excludedGroups>org.fudaa.dodico.crue.categories.TestIntegration.class</excludedGroups> <parallel>methods</parallel> <threadCount>5</threadCount> </configuration> Modified: trunk/soft/fudaa-crue/ui-application/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-application/pom.xml 2012-05-25 17:17:37 UTC (rev 7236) +++ trunk/soft/fudaa-crue/ui-application/pom.xml 2012-05-25 17:29:59 UTC (rev 7237) @@ -31,11 +31,11 @@ <artifactId>ui-wrapper</artifactId> <type>nbm</type> </dependency> - <dependency> +<!-- <dependency> <groupId>${project.groupId}</groupId> <artifactId>ui-planimetry</artifactId> <type>nbm</type> - </dependency> + </dependency>--> <dependency> <groupId>${project.groupId}</groupId> <artifactId>ui-common</artifactId> Modified: trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/post-outputWsmode.xml =================================================================== --- trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/post-outputWsmode.xml 2012-05-25 17:17:37 UTC (rev 7236) +++ trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/post-outputWsmode.xml 2012-05-25 17:29:59 UTC (rev 7237) @@ -5,10 +5,10 @@ <kind type="view" /> <state type="joined" /> <constraints> - <path orientation="horizontal" number="60" weight="0.7"/> + <path orientation="horizontal" number="102" weight="0.80"/> <path orientation="vertical" number="40" weight="0.7"/> - <path orientation="horizontal" number="40" weight="0.7"/> - <path orientation="vertical" number="1" weight="0.25"/> + <path orientation="horizontal" number="41" weight="0.7"/> + <path orientation="vertical" number="1" weight="0.5"/> </constraints> <bounds x="0" y="0" width="0" height="0"/> <frame state="0"/> Modified: trunk/soft/fudaa-crue/ui-common/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-common/pom.xml 2012-05-25 17:17:37 UTC (rev 7236) +++ trunk/soft/fudaa-crue/ui-common/pom.xml 2012-05-25 17:29:59 UTC (rev 7237) @@ -102,7 +102,12 @@ <artifactId>org-openide-filesystems</artifactId> <version>${netbeans.version}</version> </dependency> - + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>4.10</version> + <scope>test</scope> + </dependency> </dependencies> @@ -176,4 +181,12 @@ </plugins> </pluginManagement> </build> + <repositories> + <repository> + <url>http://repo1.maven.org/maven2/</url> + <id>junit_4</id> + <layout>default</layout> + <name>Repository for library Library[junit_4]</name> + </repository> + </repositories> </project> Modified: trunk/soft/fudaa-crue/ui-modelling/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/pom.xml 2012-05-25 17:17:37 UTC (rev 7236) +++ trunk/soft/fudaa-crue/ui-modelling/pom.xml 2012-05-25 17:29:59 UTC (rev 7237) @@ -30,11 +30,11 @@ <artifactId>ui-wrapper</artifactId> <type>nbm</type> </dependency> - <dependency> +<!-- <dependency> <groupId>${project.groupId}</groupId> <artifactId>ui-planimetry</artifactId> <type>nbm</type> - </dependency> + </dependency>--> <dependency> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>ui-common</artifactId> Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/BrancheConfiguration.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/BrancheConfiguration.java 2012-05-25 17:17:37 UTC (rev 7236) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/BrancheConfiguration.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -14,7 +14,7 @@ * * @author deniger ( genesis) */ -public class BrancheConfiguration { +public class BrancheConfiguration extends LigneBriseeConfiguration { TraceLigneModel lineForBranche = new TraceLigneModel(TraceLigne.LISSE, 4f, Color.BLACK);//la couleur n'a pas d'importance. TraceIconModel iconForLinePoints = new TraceIconModel(TraceIcon.CARRE_PLEIN, 4, Color.BLACK); Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/LigneBriseeConfiguration.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/LigneBriseeConfiguration.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/LigneBriseeConfiguration.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -0,0 +1,20 @@ +package org.fudaa.fudaa.crue.planimetry.configuration; + +import org.fudaa.ebli.trace.TraceIconModel; +import org.fudaa.ebli.trace.TraceLigneModel; + +/** + * + * @author deniger ( genesis) + */ +public abstract class LigneBriseeConfiguration { + + /** + * Appele par le calque pour intialiser le trace de la ligne + * @param _ligne le modele à modifier + * @param _idxPoly l'indice dans le model de calque. + */ + public abstract void initTraceLigne(final TraceLigneModel _ligne, final int _idxPoly); + + public abstract void initTraceAtomicIcon(final TraceIconModel _ligne, final int _idxPoly); +} Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/NodeConfiguration.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/NodeConfiguration.java 2012-05-25 17:17:37 UTC (rev 7236) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/NodeConfiguration.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -11,7 +11,7 @@ * * @author deniger ( genesis) */ -public class NodeConfiguration { +public class NodeConfiguration extends PointConfiguration { TraceIconModel iconModel = new TraceIconModel(TraceIcon.CERCLE, 4, Color.BLACK);//cette couleur n'est pas prise en compte TraceLigne lineUsedForIcon = new TraceLigne(TraceLigne.LISSE, 1.5f, Color.BLACK); Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/PointConfiguration.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/PointConfiguration.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/PointConfiguration.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -0,0 +1,12 @@ +package org.fudaa.fudaa.crue.planimetry.configuration; + +import org.fudaa.ebli.trace.TraceIconModel; + +/** + * + * @author deniger ( genesis) + */ +public abstract class PointConfiguration { + + public abstract void initTraceIcon(final TraceIconModel _ligne, final int _idxPoint); +} Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/LayerModelController.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/LayerModelController.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/LayerModelController.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -0,0 +1,15 @@ +package org.fudaa.fudaa.crue.planimetry.layer; + +import org.fudaa.ebli.calque.edition.ZModeleEditable; + +/** + * + * @author deniger ( genesis) + */ +public interface LayerModelController { + + /** + * Appele avant chaq + */ + void changeWillBeDone(ZModeleEditable modele); +} Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/LayerModelControllerDefault.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/LayerModelControllerDefault.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/LayerModelControllerDefault.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -0,0 +1,24 @@ +package org.fudaa.fudaa.crue.planimetry.layer; + +import org.fudaa.ebli.calque.edition.ZModeleEditable; + +/** + * + * @author deniger ( genesis) + */ +public class LayerModelControllerDefault implements LayerModelController { + + boolean edited; + + @Override + public void changeWillBeDone(ZModeleEditable modele) { + //a copy must be done to undo changes + if(!edited){ + modele.getGeomData().clone(); + + } + } + + + +} Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheLayer.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheLayer.java 2012-05-25 17:17:37 UTC (rev 7236) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheLayer.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -1,35 +1,26 @@ package org.fudaa.fudaa.crue.planimetry.layer; import java.awt.Graphics2D; -import org.fudaa.ctulu.CtuluListSelection; import org.fudaa.ctulu.gis.GISPolyligne; import org.fudaa.ctulu.gis.GisAbscCurviligneToCoordinate; import org.fudaa.dodico.crue.metier.emh.CatEMHBranche; -import org.fudaa.ebli.calque.edition.ZModeleLigneBriseeEditable; import org.fudaa.ebli.geometrie.GrBoite; import org.fudaa.ebli.geometrie.GrMorphisme; import org.fudaa.ebli.geometrie.GrPoint; import org.fudaa.ebli.trace.TraceIcon; -import org.fudaa.ebli.trace.TraceIconModel; -import org.fudaa.ebli.trace.TraceLigneModel; import org.fudaa.fudaa.crue.planimetry.PlanimetryCalqueContext; import org.fudaa.fudaa.crue.planimetry.configuration.BrancheConfiguration; import org.fudaa.fudaa.sig.layer.FSigEditor; -import org.fudaa.fudaa.sig.layer.FSigLayerLineEditable; /** * * @author deniger ( genesis) */ -public class PlanimetryBrancheLayer extends FSigLayerLineEditable { +public class PlanimetryBrancheLayer extends PlanimetryLigneBriseeLayer<BrancheConfiguration> { - BrancheConfiguration brancheConfiguration; PlanimetryCalqueContext planimetryCalqueContext; - public PlanimetryBrancheLayer() { - } - - public PlanimetryBrancheLayer(ZModeleLigneBriseeEditable _modele, FSigEditor _editor) { + public PlanimetryBrancheLayer(PlanimetryBrancheModel _modele, FSigEditor _editor) { super(_modele, _editor); } @@ -47,50 +38,6 @@ } @Override - protected void initTrace(TraceIconModel _icon, int _idxPoly) { - //si non sélectionne on ne voit pas - _icon.setType(TraceIcon.RIEN); - if (isSelected(_idxPoly)) { - TraceIconModel iconModel = brancheConfiguration.getIconForLinePoints(); - _icon.setTaille(iconModel.getTaille()); - _icon.setType(iconModel.getType()); - CatEMHBranche branche = planimetryCalqueContext.getHelper().getBranche(_idxPoly); - _icon.setCouleur(brancheConfiguration.getColor(branche)); - - } - } - - private boolean isSelected(int idxBranche) { - if (this.getSelectionMode() == SelectionMode.NORMAL && selection_ != null) { - return selection_.isSelected(idxBranche); - } - if (selectionMulti_ != null) { - final CtuluListSelection selection = selectionMulti_.get(idxBranche); - return selection != null && !selection.isEmpty(); - } - return false; - - } - - @Override - protected void initTrace(final TraceLigneModel _ligne, final int _idxPoly) { - TraceLigneModel ligneModel = brancheConfiguration.getLigneModel(); - _ligne.setEpaisseur(ligneModel.getEpaisseur()); - _ligne.setTypeTrait(ligneModel.getTypeTrait()); - CatEMHBranche branche = planimetryCalqueContext.getHelper().getBranche(_idxPoly); - _ligne.setColor(brancheConfiguration.getColor(branche)); - - } - - public BrancheConfiguration getBrancheConfiguration() { - return brancheConfiguration; - } - - public void setBrancheConfiguration(BrancheConfiguration brancheConfiguration) { - this.brancheConfiguration = brancheConfiguration; - } - - @Override public boolean canAddForme(int _typeForme) { return false; } @@ -119,9 +66,9 @@ if (_clipReel.contientXY(pt)) { pt.autoApplique(_versEcran); CatEMHBranche branche = planimetryCalqueContext.getHelper().getBranche(i); - TraceIcon icon = brancheConfiguration.getMiddleIcon(branche); + TraceIcon icon = super.layerConfiguration.getMiddleIcon(branche); icon.paintIconCentre(_g, pt.x_, pt.y_); - labelPainter.paintLabels(_g, pt, branche.getNom(), brancheConfiguration.getLabelConfiguration()); + labelPainter.paintLabels(_g, pt, branche.getNom(), layerConfiguration.getLabelConfiguration()); } } } Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheModel.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheModel.java 2012-05-25 17:17:37 UTC (rev 7236) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheModel.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -3,31 +3,24 @@ import gnu.trove.TObjectDoubleHashMap; import java.util.List; import org.apache.commons.collections.CollectionUtils; -import org.fudaa.ctulu.gis.GISPolyligne; import org.fudaa.ctulu.gis.GISZoneCollectionLigneBrisee; -import org.fudaa.ctulu.gis.GisAbscCurviligneToCoordinate; import org.fudaa.dodico.crue.config.CrueConfigMetier; import org.fudaa.dodico.crue.config.PropertyEpsilon; import org.fudaa.dodico.crue.metier.emh.CatEMHBranche; -import org.fudaa.dodico.crue.metier.emh.CatEMHSection; import org.fudaa.dodico.crue.metier.emh.EnumPosSection; import org.fudaa.dodico.crue.metier.emh.RelationEMHSectionDansBranche; import org.fudaa.dodico.crue.metier.factory.PredicateFactory; -import org.fudaa.ebli.calque.edition.ZModeleLigneBriseeEditable; /** * * @author deniger ( genesis) */ -public class PlanimetryBrancheModel extends ZModeleLigneBriseeEditable { +public class PlanimetryBrancheModel extends PlanimetryLigneBriseeLayerModel { - public PlanimetryBrancheModel(GISZoneCollectionLigneBrisee _zone) { - super(_zone); + public PlanimetryBrancheModel(GISZoneCollectionLigneBrisee _zone, LayerModelController modelController) { + super(_zone, modelController); } - public PlanimetryBrancheModel() { - } - TObjectDoubleHashMap<RelationEMHSectionDansBranche> getRatio(int position, CatEMHBranche branche, double minRealDistance, CrueConfigMetier confMetier) { TObjectDoubleHashMap<RelationEMHSectionDansBranche> res = new TObjectDoubleHashMap<RelationEMHSectionDansBranche>(); Copied: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryLigneBriseeLayer.java (from rev 7230, trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheLayer.java) =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryLigneBriseeLayer.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryLigneBriseeLayer.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -0,0 +1,52 @@ +package org.fudaa.fudaa.crue.planimetry.layer; + +import org.fudaa.ctulu.CtuluListSelection; +import org.fudaa.ebli.trace.TraceIcon; +import org.fudaa.ebli.trace.TraceIconModel; +import org.fudaa.ebli.trace.TraceLigneModel; +import org.fudaa.fudaa.crue.planimetry.configuration.LigneBriseeConfiguration; +import org.fudaa.fudaa.sig.layer.FSigEditor; +import org.fudaa.fudaa.sig.layer.FSigLayerLineEditable; + +/** + * + * @author deniger ( genesis) + */ +public class PlanimetryLigneBriseeLayer<T extends LigneBriseeConfiguration> extends FSigLayerLineEditable { + + T layerConfiguration; + + public PlanimetryLigneBriseeLayer(PlanimetryLigneBriseeLayerModel _modele, FSigEditor _editor) { + super(_modele, _editor); + } + + @Override + protected void initTrace(TraceIconModel _icon, int _idxPoly) { + if (!isSelected(_idxPoly)) { + _icon.setType(TraceIcon.RIEN); + return; + } + layerConfiguration.initTraceLigne(ligneModel_, _idxPoly); + } + + @Override + protected void initTrace(final TraceLigneModel _ligne, final int _idxPoly) { + layerConfiguration.initTraceLigne(ligneModel_, _idxPoly); + } + + protected boolean isSelected(int idxGeometry) { + if (this.getSelectionMode() == SelectionMode.NORMAL && selection_ != null) { + return selection_.isSelected(idxGeometry); + } + if (selectionMulti_ != null) { + final CtuluListSelection selection = selectionMulti_.get(idxGeometry); + return selection != null && !selection.isEmpty(); + } + return false; + + } + + public void setLayerConfiguration(T brancheConfiguration) { + this.layerConfiguration = brancheConfiguration; + } +} Copied: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryLigneBriseeLayerModel.java (from rev 7227, trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheModel.java) =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryLigneBriseeLayerModel.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryLigneBriseeLayerModel.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -0,0 +1,111 @@ +package org.fudaa.fudaa.crue.planimetry.layer; + +import com.vividsolutions.jts.geom.Geometry; +import org.fudaa.ctulu.CtuluCommandContainer; +import org.fudaa.ctulu.CtuluListSelectionInterface; +import org.fudaa.ctulu.CtuluUI; +import org.fudaa.ctulu.gis.GISZoneCollectionLigneBrisee; +import org.fudaa.ebli.calque.edition.ZEditionAttributesDataI; +import org.fudaa.ebli.calque.edition.ZModeleLigneBriseeEditable; +import org.fudaa.ebli.commun.EbliListeSelectionMultiInterface; +import org.fudaa.ebli.geometrie.GrPolygone; +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 + * + * @author deniger ( genesis) + */ +public class PlanimetryLigneBriseeLayerModel extends ZModeleLigneBriseeEditable { + + private LayerModelController modelController; + + public PlanimetryLigneBriseeLayerModel(GISZoneCollectionLigneBrisee _zone, LayerModelController modelController) { + super(_zone); + } + + public PlanimetryLigneBriseeLayerModel() { + } + + @Override + public void addPoint(int _ligneIdx, int _idxBefore, double _x, double _y, Double _z, CtuluCommandContainer _cmd) { + modelController.changeWillBeDone(this); + super.addPoint(_ligneIdx, _idxBefore, _x, _y, _z, _cmd); + } + + @Override + protected boolean removeAtomicObjects(EbliListeSelectionMultiInterface _selection, CtuluCommandContainer _cmd, CtuluUI _ui) { + modelController.changeWillBeDone(this); + return super.removeAtomicObjects(_selection, _cmd, _ui); + } + + @Override + public boolean addGeometry(Geometry _p, CtuluCommandContainer _cmd, CtuluUI _ui, ZEditionAttributesDataI _d) { + modelController.changeWillBeDone(this); + return super.addGeometry(_p, _cmd, _ui, _d); + } + + @Override + public boolean addGeometry(GrPolygone _p, CtuluCommandContainer _cmd, CtuluUI _ui, ZEditionAttributesDataI _d) { + modelController.changeWillBeDone(this); + return super.addGeometry(_p, _cmd, _ui, _d); + } + + @Override + public boolean addGeometry(GrPolyligne _p, CtuluCommandContainer _cmd, CtuluUI _ui, ZEditionAttributesDataI _d) { + modelController.changeWillBeDone(this); + return super.addGeometry(_p, _cmd, _ui, _d); + } + + @Override + public boolean closeGeometry(int _ligneIdx, CtuluCommandContainer _cmd) { + modelController.changeWillBeDone(this); + return super.closeGeometry(_ligneIdx, _cmd); + } + + @Override + public void invertGeometry(int _idxGeom, CtuluCommandContainer _cmd) { + modelController.changeWillBeDone(this); + super.invertGeometry(_idxGeom, _cmd); + } + + @Override + public void modifyProperty(String _key, Object _value, int[] _index, CtuluCommandContainer _cmd) { + modelController.changeWillBeDone(this); + super.modifyProperty(_key, _value, _index, _cmd); + } + + @Override + public boolean moveAtomic(EbliListeSelectionMultiInterface _selection, double _dx, double _dy, double _dz, + CtuluCommandContainer _cmd, CtuluUI _ui) { + modelController.changeWillBeDone(this); + return super.moveAtomic(_selection, _dx, _dy, _dz, _cmd, _ui); + } + + @Override + public boolean moveGlobal(CtuluListSelectionInterface _selection, double _dx, double _dy, double _dz, CtuluCommandContainer _cmd) { + modelController.changeWillBeDone(this); + return super.moveGlobal(_selection, _dx, _dy, _dz, _cmd); + } + + @Override + public boolean removeLigneBrisee(int[] _idx, CtuluCommandContainer _cmd) { + modelController.changeWillBeDone(this); + return super.removeLigneBrisee(_idx, _cmd); + } + + @Override + public boolean rotateAtomic(EbliListeSelectionMultiInterface _selection, double _angRad, double _xreel0, double _yreel0, + CtuluCommandContainer _cmd, CtuluUI _ui) { + modelController.changeWillBeDone(this); + return super.rotateAtomic(_selection, _angRad, _xreel0, _yreel0, _cmd, _ui); + } + + @Override + public boolean rotateGlobal(CtuluListSelectionInterface _selection, double _angRad, double _xreel0, double _yreel0, + CtuluCommandContainer _cmd) { + modelController.changeWillBeDone(this); + return super.rotateGlobal(_selection, _angRad, _xreel0, _yreel0, _cmd); + } +} Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryNodeLayer.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryNodeLayer.java 2012-05-25 17:17:37 UTC (rev 7236) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryNodeLayer.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -2,25 +2,21 @@ import java.awt.Graphics2D; import org.fudaa.dodico.crue.metier.emh.CatEMHNoeud; -import org.fudaa.ebli.calque.edition.ZModelePointEditable; import org.fudaa.ebli.geometrie.GrPoint; -import org.fudaa.ebli.trace.TraceIcon; import org.fudaa.fudaa.crue.planimetry.PlanimetryCalqueContext; import org.fudaa.fudaa.crue.planimetry.configuration.LabelConfiguration; import org.fudaa.fudaa.crue.planimetry.configuration.NodeConfiguration; import org.fudaa.fudaa.sig.layer.FSigEditor; -import org.fudaa.fudaa.sig.layer.FSigLayerPointEditable; /** * * @author deniger ( genesis) */ -public class PlanimetryNodeLayer extends FSigLayerPointEditable { +public class PlanimetryNodeLayer extends PlanimetryPointLayer<NodeConfiguration> { - private NodeConfiguration nodeConfiguration; PlanimetryCalqueContext planimetryCalqueContext; - public PlanimetryNodeLayer(ZModelePointEditable _modele, FSigEditor _editor) { + public PlanimetryNodeLayer(PlanimetryPointLayerModel _modele, FSigEditor _editor) { super(_modele, _editor); } @@ -32,23 +28,7 @@ this.planimetryCalqueContext = planimetryCalqueContext; } - public NodeConfiguration getNodeConfiguration() { - return nodeConfiguration; - } - - public void setNodeConfiguration(NodeConfiguration nodeConfiguration) { - this.nodeConfiguration = nodeConfiguration; - } - @Override - protected TraceIcon getTraceIcon() { - if (nodeConfiguration != null) { - return nodeConfiguration.createTraceIcon(); - } - return super.getTraceIcon(); - } - - @Override public boolean canAddForme(int _typeForme) { return false; } @@ -56,7 +36,7 @@ @Override protected void paintLabels(final Graphics2D g2d, int idx, GrPoint pEcran) { - LabelConfiguration labelConfiguration = nodeConfiguration.getLabelConfiguration(); + LabelConfiguration labelConfiguration = layerConfiguration.getLabelConfiguration(); CatEMHNoeud noeud = planimetryCalqueContext.getHelper().getNoeud(idx); painter.paintLabels(g2d, pEcran, noeud.getNom(), labelConfiguration); } Copied: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryPointLayer.java (from rev 7230, trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryNodeLayer.java) =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryPointLayer.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryPointLayer.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -0,0 +1,24 @@ +package org.fudaa.fudaa.crue.planimetry.layer; + +import org.fudaa.ebli.trace.TraceIconModel; +import org.fudaa.fudaa.crue.planimetry.configuration.PointConfiguration; +import org.fudaa.fudaa.sig.layer.FSigEditor; +import org.fudaa.fudaa.sig.layer.FSigLayerPointEditable; + +/** + * + * @author deniger ( genesis) + */ +public class PlanimetryPointLayer<T extends PointConfiguration> extends FSigLayerPointEditable { + + protected T layerConfiguration; + + public PlanimetryPointLayer(PlanimetryPointLayerModel _modele, FSigEditor _editor) { + super(_modele, _editor); + } + + @Override + protected void initTrace(TraceIconModel model, int i, double z) { + layerConfiguration.initTraceIcon(model, i); + } +} Added: 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 (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryPointLayerModel.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -0,0 +1,43 @@ +package org.fudaa.fudaa.crue.planimetry.layer; + +import org.fudaa.ctulu.CtuluCommandContainer; +import org.fudaa.ctulu.CtuluListSelectionInterface; +import org.fudaa.ctulu.gis.GISZoneCollectionPoint; +import org.fudaa.ebli.calque.edition.ZEditionAttributesDataI; +import org.fudaa.ebli.calque.edition.ZModelePointEditable; +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 + * + * @author deniger ( genesis) + */ +public class PlanimetryPointLayerModel extends ZModelePointEditable { + + private final LayerModelController layerModelController; + + public PlanimetryPointLayerModel(GISZoneCollectionPoint _zone, final LayerModelController layerModelController) { + super(_zone); + this.layerModelController = layerModelController; + } + + @Override + public boolean copyGlobal(CtuluListSelectionInterface _selection, double _dx, double _dy, CtuluCommandContainer _cmd) { + layerModelController.changeWillBeDone(this); + return super.copyGlobal(_selection, _dx, _dy, _cmd); + } + + @Override + public void addPoint(GrPoint _p, ZEditionAttributesDataI _data, CtuluCommandContainer _cmd) { + layerModelController.changeWillBeDone(this); + super.addPoint(_p, _data, _cmd); + } + + @Override + public boolean removePoint(int[] _idx, CtuluCommandContainer _cmd) { + layerModelController.changeWillBeDone(this); + return super.removePoint(_idx, _cmd); + } + +} Modified: trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/PostEmhExplorerTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/PostEmhExplorerTopComponent.java 2012-05-25 17:17:37 UTC (rev 7236) +++ trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/PostEmhExplorerTopComponent.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -27,7 +27,7 @@ @TopComponent.Description(preferredID = PostEmhExplorerTopComponent.TOPCOMPONENT_ID, iconBase = "org/fudaa/fudaa/crue/post/carre-vert_16.png", persistenceType = TopComponent.PERSISTENCE_ALWAYS) -...@To...gistration(mode = "post-topLeft", openAtStartup = false) +...@To...gistration(mode = "post-topRight", openAtStartup = false) @ActionID(category = "Window", id = "org.fudaa.fudaa.crue.post.PostEmhExplorerTopComponent") @TopComponent.OpenActionRegistration(displayName = "#CTL_PostEmhExplorerTopComponent", preferredID = PostEmhExplorerTopComponent.TOPCOMPONENT_ID) Modified: trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/PostReportsTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/PostReportsTopComponent.java 2012-05-25 17:17:37 UTC (rev 7236) +++ trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/PostReportsTopComponent.java 2012-05-25 17:29:59 UTC (rev 7237) @@ -11,7 +11,6 @@ import org.fudaa.ctulu.CtuluLogGroup; import org.fudaa.dodico.crue.config.SeveriteManager; import org.fudaa.dodico.crue.metier.emh.EMHScenario; -import org.fudaa.fudaa.crue.common.RoleNames; import org.fudaa.fudaa.crue.common.log.CtuluLogGroupChildFactory; import org.fudaa.fudaa.crue.common.log.CtuluLogsTopComponent; import org.fudaa.fudaa.crue.common.services.PostRunService; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-05-29 23:49:15
|
Revision: 7249 http://fudaa.svn.sourceforge.net/fudaa/?rev=7249&view=rev Author: deniger Date: 2012-05-29 23:49:08 +0000 (Tue, 29 May 2012) Log Message: ----------- Modified Paths: -------------- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/SectionConfiguration.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/TraceConfiguration.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryTraceLayer.java trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/TestScenarioBuilder.java Added Paths: ----------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/common/XtComparator.java Added: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/common/XtComparator.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/common/XtComparator.java (rev 0) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/common/XtComparator.java 2012-05-29 23:49:08 UTC (rev 7249) @@ -0,0 +1,14 @@ +package org.fudaa.dodico.crue.common; + +import org.fudaa.dodico.crue.config.CrueConfigMetier; + +/** + * + * @author deniger ( genesis) + */ +public class XtComparator extends DoubleComparator{ + + public XtComparator(CrueConfigMetier configMetier) { + super(configMetier.getEpsilon("xt")); + } +} Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/SectionConfiguration.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/SectionConfiguration.java 2012-05-29 22:03:21 UTC (rev 7248) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/SectionConfiguration.java 2012-05-29 23:49:08 UTC (rev 7249) @@ -12,31 +12,32 @@ * @author deniger ( genesis) */ public class SectionConfiguration { - - TraceIconModel iconModel = new TraceIconModel(TraceIcon.CARRE_ARRONDI, 2, Color.LIGHT_GRAY); + + TraceIconModel iconModel = new TraceIconModel(TraceIcon.CARRE_ARRONDI, 3, Color.BLUE); LabelConfiguration labelConfiguration = new LabelConfiguration(); private final VisuConfiguration parent; - + public SectionConfiguration(VisuConfiguration parent) { labelConfiguration.alignment = SwingConstants.WEST; iconModel.setTypeLigne(TraceLigne.LISSE); iconModel.setEpaisseurLigne(1f); + iconModel.setBackgroundColor(Color.WHITE); labelConfiguration.distance = 5; this.parent = parent; } - + public LabelConfiguration getLabelConfiguration() { return labelConfiguration; } - + public boolean isInactiveEMHVisible() { return parent.isInactiveEMHVisible(); } - + public int getDiameter() { return iconModel.getTaille(); } - + public void initTraceIcon(TraceIconModel _ligne, CatEMHSection section) { _ligne.updateData(iconModel); } Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/TraceConfiguration.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/TraceConfiguration.java 2012-05-29 22:03:21 UTC (rev 7248) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/TraceConfiguration.java 2012-05-29 23:49:08 UTC (rev 7249) @@ -2,7 +2,6 @@ import java.awt.Color; import javax.swing.SwingConstants; -import org.fudaa.dodico.crue.metier.emh.CatEMHSection; import org.fudaa.ebli.trace.TraceIcon; import org.fudaa.ebli.trace.TraceIconModel; import org.fudaa.ebli.trace.TraceLigne; @@ -15,27 +14,42 @@ public class TraceConfiguration { TraceLigneModel lineModel = new TraceLigneModel(TraceLigne.LISSE, 1.5f, Color.BLACK); - TraceIconModel iconModel = new TraceIconModel(TraceIcon.CARRE_PLEIN, 4, Color.BLACK); - LabelConfiguration labelConfiguration = new LabelConfiguration(); + TraceIconModel iconModel = new TraceIconModel(TraceIcon.CROIX, 4, Color.RED); + LabelConfiguration litLabelConfiguration = new LabelConfiguration(); + LabelConfiguration sectionLabelConfiguration = new LabelConfiguration(); private final VisuConfiguration parent; boolean profilVueDeAmont = false; + private int angleInDegree = 30; + //SwingConstants.RIGHT ou LEFT ou CENTER. + int sectionLabelPosition = SwingConstants.RIGHT; public boolean isProfilVueDeAmont() { return profilVueDeAmont; } public TraceConfiguration(VisuConfiguration parent) { - labelConfiguration.alignment = SwingConstants.WEST; + litLabelConfiguration.alignment = SwingConstants.NORTH; + sectionLabelConfiguration.alignment = SwingConstants.EAST; iconModel.setTypeLigne(TraceLigne.LISSE); iconModel.setEpaisseurLigne(1f); - labelConfiguration.distance = 5; + litLabelConfiguration.distance = 5; this.parent = parent; } - public LabelConfiguration getLabelConfiguration() { - return labelConfiguration; + public int getSectionLabelPosition() { + return sectionLabelPosition; } + + public LabelConfiguration getLitLabelConfiguration() { + return litLabelConfiguration; + } + public LabelConfiguration getSectionLabelConfiguration() { + return sectionLabelConfiguration; + } + + + public void initTraceLigne(TraceLigneModel _ligne, int _idxPoly) { _ligne.updateData(lineModel); } @@ -44,14 +58,37 @@ return parent.isInactiveEMHVisible(); } - public void initTraceIcon(TraceIconModel icon, CatEMHSection section) { + public void initTraceIcon(TraceIconModel icon, int idxBranche) { icon.updateData(iconModel); } /** * @return angle en radians. */ - public double getAngle() { - return Math.toRadians(30); + public double getAngleInRadians() { + return Math.toRadians(angleInDegree); } + boolean litLabelsPainted = true; + boolean sectionLabelPainted = true; + + public boolean isLitLabelsPainted() { + return litLabelsPainted; + } + + public void setLitLabelsPainted(boolean litLabelsPainted) { + this.litLabelsPainted = litLabelsPainted; + } + + public void setSectionLabelPainted(boolean sectionLabelPainted) { + this.sectionLabelPainted = sectionLabelPainted; + } + + public boolean isSectionLabelPainted() { + return sectionLabelPainted; + } + + public void setAngleInDegree(int angleInDegree) { + this.angleInDegree = angleInDegree; + } + } Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryTraceLayer.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryTraceLayer.java 2012-05-29 22:03:21 UTC (rev 7248) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryTraceLayer.java 2012-05-29 23:49:08 UTC (rev 7249) @@ -1,24 +1,31 @@ package org.fudaa.fudaa.crue.planimetry.layer; import com.vividsolutions.jts.geom.Coordinate; +import com.vividsolutions.jts.geom.CoordinateSequence; import com.vividsolutions.jts.geom.LineString; import com.vividsolutions.jts.geom.LinearRing; import gnu.trove.TObjectDoubleHashMap; import gnu.trove.TObjectDoubleIterator; import java.awt.Graphics2D; +import java.util.ArrayList; +import java.util.Collections; import java.util.HashSet; import java.util.List; +import java.util.Map; import java.util.Set; +import java.util.TreeMap; +import javax.swing.SwingConstants; import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.lang.StringUtils; import org.fudaa.ctulu.CtuluListSelection; import org.fudaa.ctulu.gis.GISGeometryFactory; import org.fudaa.ctulu.gis.GISPolyligne; import org.fudaa.ctulu.gis.GisAbscCurviligneToCoordinate; +import org.fudaa.dodico.crue.common.XtComparator; import org.fudaa.dodico.crue.config.CrueConfigMetier; import org.fudaa.dodico.crue.metier.emh.CatEMHBranche; import org.fudaa.dodico.crue.metier.emh.DonPrtGeo; import org.fudaa.dodico.crue.metier.emh.DonPrtGeoProfilSection; -import org.fudaa.dodico.crue.metier.emh.DonPrtGeoSectionIdem; import org.fudaa.dodico.crue.metier.emh.LitNumerote; import org.fudaa.dodico.crue.metier.emh.PtProfil; import org.fudaa.dodico.crue.metier.emh.RelationEMHSectionDansBranche; @@ -29,8 +36,10 @@ import org.fudaa.ebli.geometrie.GrBoite; import org.fudaa.ebli.geometrie.GrMorphisme; import org.fudaa.ebli.geometrie.GrPoint; +import org.fudaa.ebli.trace.TraceIcon; import org.fudaa.ebli.trace.TraceLigne; import org.fudaa.fudaa.crue.planimetry.LayerBrancheController; +import org.fudaa.fudaa.crue.planimetry.configuration.TraceConfiguration; import org.fudaa.fudaa.crue.planimetry.configuration.VisuConfiguration; /** @@ -83,7 +92,6 @@ TraceLigne traceLigne = new TraceLigne(); GrPoint pt = new GrPoint(); GrPoint pt2 = new GrPoint(); - Set<Long> uidDone = new HashSet<Long>(); for (int i = nb - 1; i >= 0; i--) { if (!brancheModel.isGeometryVisible(i)) { continue; @@ -95,6 +103,8 @@ GISPolyligne brancheGis = modelController.getBrancheGis(i); TObjectDoubleHashMap<RelationEMHSectionDansBranche> ratiosBySection = brancheModel.getRatio(i, branche, realDistance, crueConfigMetier); + XtComparator xtComparator = new XtComparator(modelController.getCrueConfigMetier()); + Coordinate intersectionBrancheSection = null; for (TObjectDoubleIterator it = ratiosBySection.iterator(); it.hasNext();) { it.advance(); double ratio = it.value(); @@ -115,32 +125,111 @@ } GisAbscCurviligneToCoordinate.find(brancheGis, ratio, tmpResult); pt.initialiseAvec(tmpResult.getCoordinate()); - if (!_clipReel.contientXY(pt)) { - continue; + intersectionBrancheSection = new Coordinate(tmpResult.getCoordinate()); + GISPolyligne traceGIS = createLine(profilSection, brancheGis, tmpResult); + if (isAllOut(traceGIS, _clipReel) && !_clipReel.contientXY(intersectionBrancheSection.x, intersectionBrancheSection.y)) { + return; } - GISPolyligne createLine = createLine(profilSection, brancheGis, tmpResult); - pt.x_ = createLine.getCoordinateSequence().getX(0); - pt.y_ = createLine.getCoordinateSequence().getY(0); + pt.x_ = traceGIS.getCoordinateSequence().getX(0); + pt.y_ = traceGIS.getCoordinateSequence().getY(0); pt.autoApplique(_versEcran); - visuConfiguration.getTraceConfiguration().initTraceLigne(traceLigne.getModel(), i); - for (int j = 1; j < createLine.getCoordinateSequence().size(); j++) { - pt2.x_ = createLine.getCoordinateSequence().getX(j); - pt2.y_ = createLine.getCoordinateSequence().getY(j); + final TraceConfiguration traceConfiguration = visuConfiguration.getTraceConfiguration(); + traceConfiguration.initTraceLigne(traceLigne.getModel(), i); + for (int j = 1; j < traceGIS.getCoordinateSequence().size(); j++) { + pt2.x_ = traceGIS.getCoordinateSequence().getX(j); + pt2.y_ = traceGIS.getCoordinateSequence().getY(j); pt2.autoApplique(_versEcran); traceLigne.dessineTrait(_g, pt.x_, pt.y_, pt2.x_, pt2.y_); pt.initialiseAvec(pt2); } + //on dessine les limite de lits + double xmin = profilSection.getPtProfil().get(0).getXt(); + double length = (profilSection.getPtProfil().get(profilSection.getPtProfilSize() - 1)).getXt(); + TraceIcon icon = new TraceIcon(); + traceConfiguration.initTraceIcon(icon.getModel(), i); + if (icon.getTaille() > 0 && icon.getType() != TraceIcon.RIEN) { + List<LitNumerote> litNumerotes = profilSection.getLitNumerote(); + for (LitNumerote litNumerote : litNumerotes) { + double x = litNumerote.getLimDeb().getXt(); + GisAbscCurviligneToCoordinate.find(traceGIS, (x - xmin) / length, tmpResult); + if (tmpResult.isFound()) { + pt.initialiseAvec(tmpResult.getCoordinate()); + if (_clipReel.contientXY(pt)) { + pt.autoApplique(_versEcran); + icon.paintIconCentre(_g, pt.x_, pt.y_); + } + } + x = litNumerote.getLimFin().getXt(); + GisAbscCurviligneToCoordinate.find(traceGIS, (x - xmin) / length, tmpResult); + if (tmpResult.isFound()) { + pt.initialiseAvec(tmpResult.getCoordinate()); + if (_clipReel.contientXY(pt)) { + pt.autoApplique(_versEcran); + icon.paintIconCentre(_g, pt.x_, pt.y_); + } + } + + } + } + if (traceConfiguration.isLitLabelsPainted()) { + List<LitNumerote> litNumerotes = profilSection.getLitNumerote(); + Map<Double, List<String>> nameByXt = new TreeMap<Double, List<String>>(xtComparator); + for (LitNumerote litNumerote : litNumerotes) { + if (litNumerote.getNomLit() == null || litNumerote.getNomLit().getNom() == null) { + continue; + } + Double xMiddle = (litNumerote.getLimDeb().getXt() + litNumerote.getLimFin().getXt()) / 2; + List<String> names = nameByXt.get(xMiddle); + if (names == null) { + names = new ArrayList<String>(); + nameByXt.put(xMiddle, names); + } + names.add(litNumerote.getNomLit().getNom()); + } + for (Map.Entry<Double, List<String>> entry : nameByXt.entrySet()) { + Double xLabel = entry.getKey(); + GisAbscCurviligneToCoordinate.find(traceGIS, (xLabel - xmin) / length, tmpResult); + if (tmpResult.isFound()) { + List<String> list = entry.getValue(); + String nom = null; + if (list.size() == 1) { + nom = list.get(0); + } else { + Collections.sort(list); + nom = StringUtils.join(list, '\n'); + } + pt.initialiseAvec(tmpResult.getCoordinate()); + if (_clipReel.contientXY(pt)) { + pt.autoApplique(_versEcran); + labelPainter.paintLabels(_g, pt, nom, traceConfiguration.getLitLabelConfiguration()); + } + } + + } + } + if (traceConfiguration.isSectionLabelPainted()) { + int position = traceConfiguration.getSectionLabelPosition(); + pt.initialiseAvec(intersectionBrancheSection); + if (SwingConstants.LEFT == position) { + int nbPt = traceGIS.getNumPoints(); + pt.x_ = traceGIS.getCoordinateN(nbPt).x; + pt.y_ = traceGIS.getCoordinateN(nbPt).y; + } else if (SwingConstants.RIGHT == position) { + pt.x_ = traceGIS.getCoordinateN(0).x; + pt.y_ = traceGIS.getCoordinateN(0).y; + } + if (_clipReel.contientXY(pt)) { + pt.autoApplique(_versEcran); + labelPainter.paintLabels(_g, pt, profilSection.getNom(), traceConfiguration.getSectionLabelConfiguration()); + } + } + } } } protected GISPolyligne createLine(DonPrtGeoProfilSection profilSection, GISPolyligne brancheGis, GisAbscCurviligneToCoordinate.Result tmpResult) { -// if (profilSection == null) { -// DonPrtGeoSectionIdem sectionIdem = (DonPrtGeoSectionIdem) EMHHelper.selectClass(dptg, DonPrtGeoSectionIdem.class); -// //TODO a voir ?? -//// sectionIdem.get -// } if (profilSection == null) { return null; } @@ -184,13 +273,13 @@ double norm = amont.distance(aval); double vx = aval.x - amont.x; double vy = aval.y - amont.y; - double vxTrace = (-vy) / norm; - double vyTrace = (vx) / norm; + double vxTrace = (vy) / norm; + double vyTrace = -(vx) / norm; if (visuConfiguration.getTraceConfiguration().isProfilVueDeAmont()) { vxTrace = -vxTrace; vyTrace = -vyTrace; } - double xAxeHydraulique = (maxMineur - minMineur) / 2;//retrouver la notion d'axe hydraulique... + double xAxeHydraulique = (maxMineur + minMineur) / 2;//retrouver la notion d'axe hydraulique... final Coordinate accrochePt = tmpResult.getCoordinate(); Coordinate rd = new Coordinate(); Coordinate rdMineur = new Coordinate(); @@ -200,8 +289,28 @@ compute(accrochePt, vxTrace, vyTrace, (xAxeHydraulique - minMineur), rdMineur); compute(accrochePt, vxTrace, vyTrace, (xAxeHydraulique - xmax), rg); compute(accrochePt, vxTrace, vyTrace, (xAxeHydraulique - maxMineur), rgMineur); - double angle = visuConfiguration.getTraceConfiguration().getAngle(); - + double angle = visuConfiguration.getTraceConfiguration().getAngleInRadians(); + if (angle != 0) { + final double sinAlpha = Math.sin(angle); + final double cosAlpha = Math.cos(angle); + if (!rd.equals2D(rdMineur)) { + double vxMajeur = rd.x - rdMineur.x; + double vyMajeur = rd.y - rdMineur.y; + double vxAfterRotation = vxMajeur * cosAlpha - vyMajeur * sinAlpha; + double vyAfterRotation = vxMajeur * sinAlpha - vyMajeur * cosAlpha; + rd.x = rdMineur.x + vxAfterRotation; + rd.y = rdMineur.y + vyAfterRotation; + } + if (!rg.equals2D(rgMineur)) { + double vxMajeur = rg.x - rgMineur.x; + double vyMajeur = rg.y - rgMineur.y; + double vxAfterRotation = vxMajeur * cosAlpha - vyMajeur * sinAlpha; + double vyAfterRotation = vxMajeur * sinAlpha - vyMajeur * cosAlpha; + rg.x = rgMineur.x + vxAfterRotation; + rg.y = rgMineur.y + vyAfterRotation; + } + } + return (GISPolyligne) GISGeometryFactory.INSTANCE.createLineString( new Coordinate[]{rd, rdMineur, rgMineur, rg}); } @@ -235,4 +344,14 @@ @Override public void paintSelection(Graphics2D _g, ZSelectionTrace _trace, GrMorphisme _versEcran, GrBoite _clipReel) { } + + private boolean isAllOut(GISPolyligne traceGIS, GrBoite _clipReel) { + CoordinateSequence coordinateSequence = traceGIS.getCoordinateSequence(); + for (int i = coordinateSequence.size() - 1; i >= 0; i--) { + if (_clipReel.contientXY(coordinateSequence.getX(i), coordinateSequence.getY(i))) { + return false; + } + } + return true; + } } Modified: trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/TestScenarioBuilder.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/TestScenarioBuilder.java 2012-05-29 22:03:21 UTC (rev 7248) +++ trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/TestScenarioBuilder.java 2012-05-29 23:49:08 UTC (rev 7249) @@ -31,7 +31,7 @@ */ @Category(org.fudaa.fudaa.crue.common.TestUI.class) public class TestScenarioBuilder { - + public static EMHScenario buildDefaultScenario() { EMHScenario scenario = new EMHScenario(TestCrueConfigMetierLoaderDefault.DEFAULT, new CrueOptions()); EMHModeleBase modele = new EMHModeleBase(TestCrueConfigMetierLoaderDefault.DEFAULT); @@ -64,9 +64,10 @@ addBranche("Br_5", nd6, nd7, 300, sousModele, 20); return scenario; } - + protected static void addSection(EMHSectionProfil section) { DonPrtGeoProfilSection profil = new DonPrtGeoProfilSection(); + profil.setNom("Prof_" + section.getNom()); section.addInfosEMH(profil); List<PtProfil> profils = new ArrayList<PtProfil>(); List<LitNumerote> litNumerotes = new ArrayList<LitNumerote>(); @@ -89,7 +90,7 @@ profil.setPtProfil(profils); profil.setLitNumerote(litNumerotes); } - + protected static LitNumerote create(List<PtProfil> profils, int idxDeb, int idxFin, boolean mineure, String nom) { LitNumerote stoDroit = new LitNumerote(); stoDroit.setLimDeb(profils.get(idxDeb)); @@ -97,9 +98,9 @@ stoDroit.setIsLitMineur(mineure); stoDroit.setNomLit(new LitNomme(nom)); return stoDroit; - + } - + private static void addBranche(final String brName, CatEMHNoeud nd1, CatEMHNoeud nd2, double length, EMHSousModele sousModele, int nbSection) { CatEMHBranche br = new EMHBranchePdc(brName); @@ -109,7 +110,7 @@ addSections(sousModele, br, length, nbSection); EMHRelationFactory.addRelationContientEMH(sousModele, br); } - + private static void addSections(EMHSousModele sousModele, CatEMHBranche br, double length, int nbSection) { EMHSectionSansGeometrie sectionAmont = new EMHSectionSansGeometrie("St_" + br.getNom() + "_Amont"); EMHSectionSansGeometrie sectionAval = new EMHSectionSansGeometrie("St_" + br.getNom() + "_Aval"); @@ -146,13 +147,13 @@ } br.addListeSections(sections); } - + private static CatEMHNoeud createNode(EMHNoeudFactory fac, final String noeudName, EMHSousModele sousModele) { CatEMHNoeud nd1 = fac.getCatEMHNoeud(noeudName); EMHRelationFactory.addRelationContientEMH(sousModele, nd1); return nd1; } - + private static CatEMHCasier createCasier(CatEMHNoeud noeud, EMHSousModele sousModele) { EMHCasierMNT casier = new EMHCasierMNT("Ca_" + noeud.getNom()); casier.setNoeud(noeud); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-06-01 01:09:46
|
Revision: 7260 http://fudaa.svn.sourceforge.net/fudaa/?rev=7260&view=rev Author: deniger Date: 2012-06-01 01:09:38 +0000 (Fri, 01 Jun 2012) Log Message: ----------- prise en compte caractere editable Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/comparaison/TestRequete.java trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/metier/emh/CloneTest.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/LayerBrancheController.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/LayerCasierController.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/LayerModelControllerDefault.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/NetworkBuilder.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PLanimetryDeplacementAction.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGISEditionAction.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGisAttributeContext.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/VisuConfiguration.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheModel.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryCasierLayerModel.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetrySectionLayer.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryTraceLayer.java Added Paths: ----------- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/PlanimetryGISGMLZoneExporter.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/PlanimetryGisSaver.java Modified: trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/comparaison/TestRequete.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/comparaison/TestRequete.java 2012-06-01 00:38:08 UTC (rev 7259) +++ trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/comparaison/TestRequete.java 2012-06-01 01:09:38 UTC (rev 7260) @@ -194,13 +194,6 @@ public void testFile() { CustomPropertyUtilsBeanInstaller.install(); - final ArrayList o = new ArrayList(); - Map res = null; - try { - res = PropertyUtils.describe(o); - } catch (final Exception e) { - e.printStackTrace(); - } final ReaderConfig readerConfig = new ReaderConfig(); final ConfComparaisonConteneur read = readerConfig.read(ReaderConfig.class.getResource("default-comparaison.xml")); final ExecuteComparaison comp = new ExecuteComparaison(read, TestCrueConfigMetierLoaderDefault.DEFAULT, null); Modified: trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/metier/emh/CloneTest.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/metier/emh/CloneTest.java 2012-06-01 00:38:08 UTC (rev 7259) +++ trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/metier/emh/CloneTest.java 2012-06-01 01:09:38 UTC (rev 7260) @@ -6,7 +6,15 @@ import com.rits.cloning.Cloner; import java.util.List; +import org.fudaa.ctulu.CtuluLog; +import org.fudaa.dodico.crue.comparaison.ExecuteComparaison; +import org.fudaa.dodico.crue.comparaison.config.ConfComparaisonConteneur; +import org.fudaa.dodico.crue.comparaison.io.ReaderConfig; import org.fudaa.dodico.crue.config.TestCrueConfigMetierLoaderDefault; +import org.fudaa.dodico.crue.io.ReadHelper; +import org.fudaa.dodico.crue.io.TestCrueDH; +import org.fudaa.dodico.crue.io.common.CrueData; +import org.fudaa.dodico.crue.io.common.CrueIOResu; import org.fudaa.dodico.crue.metier.factory.EMHRelationFactory; import org.junit.Test; import static org.junit.Assert.*; @@ -16,25 +24,51 @@ * @author deniger ( genesis) */ public class CloneTest { - + public CloneTest() { } - + @Test public void testClone() { CatEMHBranche br = new CatEMHBranche("toto"); br.addInfosEMH(new DonPrtCIniBranche(TestCrueConfigMetierLoaderDefault.DEFAULT)); - EMHRelationFactory.addNoeudAmont(br, new EMHNoeudNiveauContinu("Test")); + final EMHNoeudNiveauContinu emhNoeudNiveauContinu = new EMHNoeudNiveauContinu("Test"); + EMHRelationFactory.addNoeudAmont(br, emhNoeudNiveauContinu); + EMHRelationFactory.addNoeudAval(br, emhNoeudNiveauContinu); Cloner cloner = new Cloner(); CatEMHBranche br2 = cloner.deepClone(br); assertNotNull(br2); assertEquals(br2.getNom(), br.getNom()); assertFalse(br2 == br); - List<RelationEMH> relationEMHInit = br.getRelationEMH(); List<RelationEMH> relationEMH = br2.getRelationEMH(); - assertEquals(1, relationEMH.size()); - - - + assertEquals(2, relationEMH.size()); + RelationEMHNoeudDansBranche firstRelationIn1 = (RelationEMHNoeudDansBranche) br.getRelationEMH().get(0); + RelationEMHNoeudDansBranche firstRelationIn2 = (RelationEMHNoeudDansBranche) relationEMH.get(0); + assertFalse(firstRelationIn1 == firstRelationIn2); + assertEquals(firstRelationIn1.getClass(), firstRelationIn2.getClass()); + assertEquals(firstRelationIn1.getEmh().getNom(), firstRelationIn2.getEmh().getNom()); + assertEquals(firstRelationIn1.getEmh().getId(), firstRelationIn2.getEmh().getId()); + RelationEMHNoeudDansBranche secRelationIn2 = (RelationEMHNoeudDansBranche) relationEMH.get(1); + assertTrue(secRelationIn2.getEmh() == firstRelationIn2.getEmh()); } + + @Test + public void testAll() { + CrueIOResu<CrueData> readModele = ReadHelper.readModele(new CtuluLog(), TestCrueDH.FICHIER_TEST_MODELE3_DC, + TestCrueDH.FICHIER_TEST_MODELE3_DH); + EMHScenario scenarioData = readModele.getMetier().getScenarioData(); + Cloner cloner = new Cloner(); + EMHScenario clonedScenario = cloner.deepClone(scenarioData); + final ReaderConfig readerConfig = new ReaderConfig(); + final ConfComparaisonConteneur read = readerConfig.read(ReaderConfig.class.getResource("default-comparaison.xml")); + final ExecuteComparaison comp = new ExecuteComparaison(read, TestCrueConfigMetierLoaderDefault.DEFAULT, null); + final List<ExecuteComparaison.ExecuteComparaisonResult> launch = comp.launch(scenarioData, clonedScenario); + for (ExecuteComparaison.ExecuteComparaisonResult result : launch) { + if (result.getLog().containsErrorOrSevereError()) { + result.getLog().printResume(); + fail(); + } + assertTrue(result.getRes() == null || result.getRes().isSame()); + } + } } Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/LayerBrancheController.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/LayerBrancheController.java 2012-06-01 00:38:08 UTC (rev 7259) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/LayerBrancheController.java 2012-06-01 01:09:38 UTC (rev 7260) @@ -45,7 +45,7 @@ return; } super.changeWillBeDone(); - //on sauvegarde égaleemnt les autres données hydrau + //on sauvegarde également les autres données hydrau getHelper().getNodeController().changeWillBeDone(); getHelper().getCasierController().changeWillBeDone(); } Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/LayerCasierController.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/LayerCasierController.java 2012-06-01 00:38:08 UTC (rev 7259) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/LayerCasierController.java 2012-06-01 01:09:38 UTC (rev 7260) @@ -49,9 +49,6 @@ return ((ZModeleLigneBriseeEditable) layer.modeleDonnees()).getGeomData(); } - public boolean isDefinedAsPolygone(int position) { - return helper.getPlanimetryGisAttributeContext().getCasierAsLineModel(getCasierCollection()).getValue(position); - } CasierUpdaterFromNode casierUpdaterFromNode; @Override Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/LayerModelControllerDefault.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/LayerModelControllerDefault.java 2012-06-01 00:38:08 UTC (rev 7259) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/LayerModelControllerDefault.java 2012-06-01 01:09:38 UTC (rev 7260) @@ -1,6 +1,5 @@ package org.fudaa.fudaa.crue.planimetry; -import org.fudaa.ctulu.gis.GISZoneCollection; import org.fudaa.ctulu.gis.GISZoneCollectionGeometry; import org.fudaa.ctulu.gis.GISZoneListener; import org.fudaa.ctulu.gis.GISZoneListenerDispatcher; Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/NetworkBuilder.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/NetworkBuilder.java 2012-06-01 00:38:08 UTC (rev 7259) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/NetworkBuilder.java 2012-06-01 01:09:38 UTC (rev 7260) @@ -72,13 +72,9 @@ } protected void addCasierAsPolygone(GISPolygone finalCoordinate, CatEMHCasier casier) { - casiers.addPolygone(finalCoordinate, context.buildCasierData(casier, true), null); + casiers.addPolygone(finalCoordinate, context.buildCasierData(casier), null); } - protected void addCasierAsPoint(GISPolygone finalCoordinate, CatEMHCasier casier) { - casiers.addPolygone(finalCoordinate, context.buildCasierData(casier, false), null); - } - public GISZoneCollectionPoint getNodes() { return nodes; } @@ -154,12 +150,13 @@ CatEMHCasier casier = nd.getCasier(); if (casier != null) { casierDone.add(casier.getUiId()); - double xMin = pt.getX(); - double yMin = pt.getY(); - double xMax = pt.getX(); - double yMax = pt.getY(); + double defaultCasierRealDimension = configuration.getDefaultCasierRealDimension(); + double xMin = pt.getX() - defaultCasierRealDimension / 2; + double yMin = pt.getY() - defaultCasierRealDimension / 2; + double xMax = pt.getX() + defaultCasierRealDimension / 2; + double yMax = pt.getY() + defaultCasierRealDimension / 2; GISPolygone rectangle = GISGeometryFactory.INSTANCE.createLinearRing(xMin, xMax, yMin, yMax); - res.addCasierAsPoint(rectangle, casier); + res.addCasierAsPolygone(rectangle, casier); } } } Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PLanimetryDeplacementAction.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PLanimetryDeplacementAction.java 2012-06-01 00:38:08 UTC (rev 7259) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PLanimetryDeplacementAction.java 2012-06-01 01:09:38 UTC (rev 7260) @@ -2,6 +2,7 @@ import com.memoire.bu.BuLabel; import java.awt.FlowLayout; +import javax.swing.event.TreeSelectionEvent; import javax.swing.tree.TreeSelectionModel; import org.fudaa.ctulu.CtuluLibString; import org.fudaa.ebli.calque.action.SceneDeplacementAction; @@ -58,10 +59,10 @@ PlanimetryPanelDeplacement content = (PlanimetryPanelDeplacement) getPaletteContent(); content.setEditable(paletteEnable); } + } + - } - @Override public void setSelected(boolean _b) { if (!editable) { Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGISEditionAction.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGISEditionAction.java 2012-06-01 00:38:08 UTC (rev 7259) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGISEditionAction.java 2012-06-01 01:09:38 UTC (rev 7260) @@ -1,6 +1,8 @@ package org.fudaa.fudaa.crue.planimetry; +import javax.swing.event.TreeSelectionEvent; import javax.swing.tree.TreeSelectionModel; +import org.fudaa.ebli.calque.BCalqueInteraction; import org.fudaa.ebli.calque.ZScene; import org.fudaa.ebli.calque.action.CalqueGISEditionAction; import org.fudaa.ebli.calque.edition.ZEditorDefault; @@ -22,4 +24,17 @@ bPaletteEdition.buildComponents(); return bPaletteEdition; } + + /** + * Appelée quand il y a un changement de selection dans l'arbre des calques. + */ + @Override + public void valueChanged(final TreeSelectionEvent _e) { + unactivePaletteCreation(); + BCalqueInteraction calqueInteraction = editor_.getPanel().getController().getCalqueInteraction("cqDeplacement"); + if (calqueInteraction.isGele() && editor_.getPanel().getController().getCqSelectionI() != null) { + editor_.getPanel().getController().getCqSelectionI().setGele(false); + } + setTarget(getTarget((TreeSelectionModel) _e.getSource())); + } } Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGisAttributeContext.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGisAttributeContext.java 2012-06-01 00:38:08 UTC (rev 7259) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGisAttributeContext.java 2012-06-01 01:09:38 UTC (rev 7260) @@ -24,7 +24,7 @@ * @author deniger ( genesis) */ public class PlanimetryGisAttributeContext { - + public static final int UID_POSITION = 0; public static final int CASIER_AS_POLYGON_POSITION = 2; GISAttributeLong uid = new GISAttributeLong("uid"); @@ -32,75 +32,73 @@ GISAttributeBoolean casierAsClosedLine = new GISAttributeBoolean("casierAsClosedLine"); private final IdRegistry idRegistry; private final CrueConfigMetier crueConfigMetier; - + public PlanimetryGisAttributeContext(IdRegistry idRegistry, CrueConfigMetier crueConfigMetier) { this.idRegistry = idRegistry; uid.setUserVisible(false); ((CtuluValueEditorString) id.getEditor()).setEditable(false); this.crueConfigMetier = crueConfigMetier; } - + public CrueConfigMetier getCrueConfigMetier() { return crueConfigMetier; } - + public <T extends EMH> T getEMH(Long uid) { return (T) idRegistry.getEmh(uid); } - + public boolean isUid(GISAttributeInterface attribute) { return uid == attribute; } - + public GISAttributeModel getUidModel(GISZoneCollectionGeometry zone) { return zone.getDataModel(UID_POSITION); } - - public GISAttributeModelBooleanInterface getCasierAsLineModel(GISZoneCollectionLigneBrisee zone) { - return (GISAttributeModelBooleanInterface) zone.getDataModel(CASIER_AS_POLYGON_POSITION); - } - + +// public GISAttributeModelBooleanInterface getCasierAsLineModel(GISZoneCollectionLigneBrisee zone) { +// return (GISAttributeModelBooleanInterface) zone.getDataModel(CASIER_AS_POLYGON_POSITION); +// } public Long getUid(GISZoneCollectionGeometry zone, int idx) { return (Long) zone.getDataModel(UID_POSITION).getObjectValueAt(idx); } - + protected GISZoneCollectionPoint createNodeCollection() { GISZoneCollectionPoint res = new GISZoneCollectionPoint(); res.setAttributes(new GISAttributeInterface[]{uid, id}, null); return res; } - + protected List buildNodeData(CatEMHNoeud nd) { List data = new ArrayList(); data.add(Long.valueOf(nd.getUiId())); data.add(nd.getId()); return data; } - + GISZoneCollectionLigneBrisee createEdgeCollection() { GISZoneCollectionLigneBrisee res = new GISZoneCollectionLigneBrisee(); res.setAttributes(new GISAttributeInterface[]{uid, id}, null); return res; } - + GISZoneCollectionLigneBrisee createCasierCollection() { GISZoneCollectionLigneBrisee res = new GISZoneCollectionLigneBrisee(); - res.setAttributes(new GISAttributeInterface[]{uid, id, casierAsClosedLine}, null); + res.setAttributes(new GISAttributeInterface[]{uid, id}, null); return res; } - + Object[] buildEdgeData(CatEMHBranche branche) { List data = new ArrayList(); data.add(Long.valueOf(branche.getUiId())); data.add(branche.getId()); return data.toArray(); } - - Object[] buildCasierData(CatEMHCasier casier, boolean asPolygone) { + + Object[] buildCasierData(CatEMHCasier casier) { List data = new ArrayList(); data.add(Long.valueOf(casier.getUiId())); data.add(casier.getId()); - data.add(Boolean.valueOf(asPolygone)); return data.toArray(); } } Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/VisuConfiguration.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/VisuConfiguration.java 2012-06-01 00:38:08 UTC (rev 7259) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/configuration/VisuConfiguration.java 2012-06-01 01:09:38 UTC (rev 7260) @@ -12,6 +12,7 @@ double minimalDistanceBetweenNode = 100; double minimalDistanceBeetweenParallelEdges = 100; double casierTaille = 5; + double defaultCasierRealDimension = 4; NodeConfiguration nodeConfiguration; BrancheConfiguration brancheConfiguration; SectionConfiguration sectionConfiguration; @@ -26,19 +27,21 @@ return r; } + public double getDefaultCasierRealDimension() { + return defaultCasierRealDimension; + } + public VisuConfiguration() { nodeConfiguration = new NodeConfiguration(this); brancheConfiguration = new BrancheConfiguration(this); sectionConfiguration = new SectionConfiguration(this); casierConfiguration = new CasierConfiguration(this); - traceConfiguration=new TraceConfiguration(this); + traceConfiguration = new TraceConfiguration(this); } public TraceConfiguration getTraceConfiguration() { return traceConfiguration; } - - public NodeConfiguration getNodeConfiguration() { return nodeConfiguration; @@ -47,8 +50,6 @@ public boolean isInactiveEMHVisible() { return inactiveEMHVisible; } - - /** * To get a font of the same family than an other but a little differente in size or style. Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheModel.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheModel.java 2012-06-01 00:38:08 UTC (rev 7259) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheModel.java 2012-06-01 01:09:38 UTC (rev 7260) @@ -23,12 +23,12 @@ super(_zone, modelController); } - TObjectDoubleHashMap<RelationEMHSectionDansBranche> getRatio(int position, CatEMHBranche branche, double minRealDistance, - CrueConfigMetier confMetier) { + TObjectDoubleHashMap<RelationEMHSectionDansBranche> getRatio(int position, double minRealDistance, CrueConfigMetier confMetier) { TObjectDoubleHashMap<RelationEMHSectionDansBranche> res = new TObjectDoubleHashMap<RelationEMHSectionDansBranche>(); if (position < 0) { return res; } + CatEMHBranche branche = getModelController().getBranche(position); List<RelationEMHSectionDansBranche> listeSections = branche.getListeSections(); RelationEMHSectionDansBranche amontRelation = (RelationEMHSectionDansBranche) CollectionUtils.find(listeSections, new PredicateFactory.PredicateRelationEMHSectionDansBranche( Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryCasierLayerModel.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryCasierLayerModel.java 2012-06-01 00:38:08 UTC (rev 7259) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryCasierLayerModel.java 2012-06-01 01:09:38 UTC (rev 7260) @@ -20,6 +20,6 @@ @Override public boolean isGeometryReliee(int _idxGeom) { - return getModelController().isDefinedAsPolygone(_idxGeom); + return true; } } Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetrySectionLayer.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetrySectionLayer.java 2012-06-01 00:38:08 UTC (rev 7259) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetrySectionLayer.java 2012-06-01 01:09:38 UTC (rev 7260) @@ -98,7 +98,7 @@ continue; } GISPolyligne brancheGis = brancheModel.getModelController().getBrancheGis(i); - TObjectDoubleHashMap<RelationEMHSectionDansBranche> ratiosBySection = brancheModel.getRatio(i, branche, realDistance, + TObjectDoubleHashMap<RelationEMHSectionDansBranche> ratiosBySection = brancheModel.getRatio(i, realDistance, crueConfigMetier); for (TObjectDoubleIterator it = ratiosBySection.iterator(); it.hasNext();) { it.advance(); @@ -231,6 +231,11 @@ } @Override + public GrBoite getDomaine() { + return getBrancheModel().getModelController().getLayer().getDomaine(); + } + + @Override public void paintSelection(Graphics2D _g, ZSelectionTrace _trace, GrMorphisme _versEcran, GrBoite _clipReel) { } } Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryTraceLayer.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryTraceLayer.java 2012-06-01 00:38:08 UTC (rev 7259) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryTraceLayer.java 2012-06-01 01:09:38 UTC (rev 7260) @@ -91,9 +91,12 @@ if (!isVisible()) { return null; } - GrBoite boite = new GrBoite(); int nb = brancheModel.getNombre(); final LayerBrancheController modelController = brancheModel.getModelController(); + GrBoite boite = modelController.getLayer().getDomaine(); + if (boite == null) { + boite = new GrBoite(); + } final CrueConfigMetier crueConfigMetier = modelController.getCrueConfigMetier(); GisAbscCurviligneToCoordinate.Result tmpResult = new GisAbscCurviligneToCoordinate.Result(); for (int i = nb - 1; i >= 0; i--) { @@ -105,7 +108,8 @@ continue; } GISPolyligne brancheGis = modelController.getBrancheGis(i); - TObjectDoubleHashMap<RelationEMHSectionDansBranche> ratiosBySection = brancheModel.getRatio(i, branche, 0, + boite.ajuste(brancheGis.getEnvelopeInternal()); + TObjectDoubleHashMap<RelationEMHSectionDansBranche> ratiosBySection = brancheModel.getRatio(i, 0, crueConfigMetier); for (TObjectDoubleIterator it = ratiosBySection.iterator(); it.hasNext();) { it.advance(); @@ -121,9 +125,11 @@ continue; } GisAbscCurviligneToCoordinate.find(brancheGis, ratio, tmpResult); - GISPolyligne traceGIS = createLine(profilSection, brancheGis, tmpResult); - if (traceGIS != null) { - boite.ajuste(traceGIS.getEnvelopeInternal()); + if (tmpResult.isFound()) { + GISPolyligne traceGIS = createLine(profilSection, brancheGis, tmpResult); + if (traceGIS != null) { + boite.ajuste(traceGIS.getEnvelopeInternal()); + } } } } @@ -154,7 +160,7 @@ continue; } GISPolyligne brancheGis = modelController.getBrancheGis(i); - TObjectDoubleHashMap<RelationEMHSectionDansBranche> ratiosBySection = brancheModel.getRatio(i, branche, realDistance, + TObjectDoubleHashMap<RelationEMHSectionDansBranche> ratiosBySection = brancheModel.getRatio(i, realDistance, crueConfigMetier); XtComparator xtComparator = new XtComparator(modelController.getCrueConfigMetier()); Coordinate intersectionBrancheSection = null; @@ -177,6 +183,9 @@ continue; } GisAbscCurviligneToCoordinate.find(brancheGis, ratio, tmpResult); + if (!tmpResult.isFound()) { + continue; + } pt.initialiseAvec(tmpResult.getCoordinate()); intersectionBrancheSection = new Coordinate(tmpResult.getCoordinate()); GISPolyligne traceGIS = createLine(profilSection, brancheGis, tmpResult); Copied: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/PlanimetryGISGMLZoneExporter.java (from rev 7196, trunk/framework/ctulu-gis/src/main/java/org/fudaa/ctulu/gis/gml/GISGMLZoneExporter.java) =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/PlanimetryGISGMLZoneExporter.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/PlanimetryGISGMLZoneExporter.java 2012-06-01 01:09:38 UTC (rev 7260) @@ -0,0 +1,255 @@ +/* + * @creation 19 mai 2005 + * + * @modification $Date: 2008-03-28 14:59:28 $ + * + * @license GNU General Public License 2 + * + * @copyright (c)1998-2001 CETMEF 2 bd Gambetta F-60231 Compiegne + * + * @mail de...@fu... + */ +package org.fudaa.fudaa.crue.planimetry.save; + +import gnu.trove.TIntArrayList; +import gnu.trove.TObjectIntHashMap; + +import java.io.IOException; +import java.io.OutputStream; + +import org.fudaa.ctulu.CtuluActivity; +import org.fudaa.ctulu.ProgressionInterface; +import org.fudaa.ctulu.ProgressionUpdater; +import org.fudaa.ctulu.gis.GISAttributeConstants; +import org.fudaa.ctulu.gis.GISAttributeDouble; +import org.fudaa.ctulu.gis.GISAttributeInterface; +import org.fudaa.ctulu.gis.GISAttributeModel; +import org.fudaa.ctulu.gis.GISLib; +import org.fudaa.ctulu.gis.GISZoneCollection; +import org.geotools.data.DataStore; +import org.geotools.data.FeatureWriter; +import org.geotools.data.Transaction; +import org.geotools.feature.AttributeType; +import org.geotools.feature.AttributeTypeFactory; +import org.geotools.feature.Feature; +import org.geotools.feature.FeatureType; +import org.geotools.feature.FeatureTypes; +import org.geotools.feature.IllegalAttributeException; +import org.geotools.feature.SchemaException; +import org.geotools.feature.type.BasicFeatureTypes; + +import org.fudaa.ctulu.gis.GISDataModel; + +import com.memoire.fu.FuLog; +import com.vividsolutions.jts.geom.Geometry; +import org.fudaa.ctulu.gis.gml.GMLFeatureWriter; + +/** + * @author Fred Deniger + * @version $Id: GISGMLZoneExporter.java,v 1.1.6.1 2008-03-28 14:59:28 bmarchan Exp $ + */ +public class PlanimetryGISGMLZoneExporter implements CtuluActivity { + + boolean stop_; + + public void stop() { + stop_ = true; + } + + public PlanimetryGISGMLZoneExporter() { + super(); + } + + private boolean useIdAsName_; + + /** + * Cr�ation de tous les attributes types a partir des attributs de la zone. L'attribut pris pour Z n'est pas cr��, car + * transf�r� dans le Z. + * + * @param _zone La zone. + * @param _attIsZ L'attribut pris pour Z + * @param _attrIdx Argument de sortie. Une table associant l'indice des attributs de la zone a un attribut cr��. + * @return Les attributs cr�es. + */ + public AttributeType[] createAttributes(final GISDataModel _zone, final GISAttributeDouble _attIsZ, final TObjectIntHashMap _attrIdx) { + final int attributeNb = _zone.getNbAttributes(); + final TIntArrayList attribute = new TIntArrayList(attributeNb); + + for (int i = 0; i < attributeNb; i++) { + // Seul l'attribut pris pour Z n'est pas enregistr�. + if (!_zone.getAttribute(i).equals(_attIsZ)) { + // if (!_zone.getAttribute(i).isAtomicValue()) { + attribute.add(i); + if (FuLog.isDebug()) { + FuLog.debug("add attribute " + _zone.getAttribute(i).getID() + " classe " + _zone.getAttribute(i).getDataClass()); + } + } + } + final int size = attribute.size(); + // on construit les attributs que vont bien + final AttributeType[] atts = new AttributeType[2 + size]; + // le premier correspond a la geometrie + atts[0] = AttributeTypeFactory.newAttributeType(BasicFeatureTypes.GEOMETRY_ATTRIBUTE_NAME, Geometry.class); + + for (int i = 0; i < size; i++) { + final int posInZone = attribute.get(i); + atts[i + 1] = GISLib.createAttributeFrom(_zone.getAttribute(posInZone), useIdAsName_); + _attrIdx.put(atts[i + 1], posInZone); + } + + // Le dernier correspond � l'index de la g�om�trie dans la GISZone + GISAttributeInterface attInd = GISAttributeConstants.INDEX_GEOM; + atts[atts.length - 1] = AttributeTypeFactory.newAttributeType(attInd.getID(), attInd.getDataClass()); + return atts; + } + + DataStore store_; + OutputStream out_; + + protected FeatureWriter createWriter(final FeatureType _type) throws IOException { + if (store_ != null) { + store_.createSchema(_type); + return store_.getFeatureWriter(_type.getTypeName(), Transaction.AUTO_COMMIT); + } + return new GMLFeatureWriter(_type, out_); + } + + /** + * @param _prog la barre de progression + * @param _zone la zone a exporter + * @param _dest la destination + * @throws IOException + * @throws SchemaException + * @throws IllegalAttributeException + */ + public void process(final ProgressionInterface _prog, final GISDataModel _zone, final GISAttributeDouble _attIsZ, final DataStore _dest) + throws IOException, SchemaException, IllegalAttributeException { + out_ = null; + store_ = _dest; + process(_prog, _zone, _attIsZ); + } + + /** + * Attention: l'outputstream n'est pas ferme. + * + * @param _prog + * @param _zone + * @param _dest + * @throws IOException + * @throws SchemaException + * @throws IllegalAttributeException + */ + public void processGML(final ProgressionInterface _prog, final GISZoneCollection _zone, final OutputStream _dest) throws IOException, + SchemaException, IllegalAttributeException { + out_ = _dest; + store_ = null; + _zone.prepareExport(); + process(_prog, _zone, _zone.getAttributeIsZ()); + } + + /** + * Enregistre la zone sous un format GML. + * <p> + * Les attributs globaux sont enregistr�s comme attributs globaux de chaque g�om�trie, l'attribut pris pour Z est + * enregistr� dans les coordonn�es Z des g�om�tries.<br> + * Les attributs atomiques sont enregistr�s sous forme de tableau de String, s�par�s par une virgule. + * + * @param _prog Progression de la tache. + * @param _zone La zone a enregistrer + * @param _attIsZ L'attrribut pris pour Z (atomique ou non). + */ + private void process(final ProgressionInterface _prog, final GISDataModel _zone, GISAttributeDouble _attIsZ) throws IOException, SchemaException, + IllegalAttributeException { + /* + * Pour que les z atomiques soient export�s correctement, il faut que + * prepareExport() ait �t� appel� en amont de cette m�thode. + */ + stop_ = false; + final TObjectIntHashMap attIdx = new TObjectIntHashMap(_zone.getNbAttributes()); + final AttributeType[] atts = createAttributes(_zone, _attIsZ, attIdx); + if (stop_) { + return; + } + final FeatureType featureType = createFeatureType(_zone, atts); + FeatureWriter writer = null; + try { + writer = createWriter(featureType); + if (stop_) { + return; + } + final int nb = _zone.getNumGeometries(); + final ProgressionUpdater up = new ProgressionUpdater(_prog); + up.setValue(9, nb, 10, 90); + final int nbAttribute = atts.length; + for (int i = 0; i < nb; i++) { + if (stop_) { + return; + } + final Feature feature = writer.next(); + feature.setDefaultGeometry(_zone.getGeometry(i)); + for (int j = 1; j < nbAttribute - 1; j++) { + + // Pour les attributs atomiques, les valeurs sont stock�es sous forme d'un tableau {a,b,c,...} + if (_zone.getAttribute(attIdx.get(atts[j])).isAtomicValue()) { + Object value = _zone.getValue(attIdx.get(atts[j]), i); + StringBuilder sb = new StringBuilder(); + if (value instanceof GISAttributeModel) { + GISAttributeModel md = (GISAttributeModel) value; + + sb.append("{").append(md.getObjectValueAt(0).toString().replaceAll(",", "‚")); + for (int k = 1; k < md.getSize(); k++) + sb.append(",").append(md.getObjectValueAt(k).toString().replaceAll(",", "‚")); + sb.append("}"); + } else if (value != null) { + sb.append("{").append(value.toString().replaceAll(",", "‚")); + sb.append("}"); + } + + feature.setAttribute(j, sb); + } + + /// Atributs standards. + else feature.setAttribute(j, _zone.getValue(attIdx.get(atts[j]), i)); + } + + // Enregistrement de l'index de la g�om�trie dans le fichier + feature.setAttribute(nbAttribute - 1, new Integer(i)); + writer.write(); + + up.majAvancement(); + } + } finally { + if (writer != null) { + if (out_ == null) { + writer.close(); + } else { + ((GMLFeatureWriter) writer).writeFooter(); + } + } + } + } + + public FeatureType createFeatureType(final GISDataModel _zone, final AttributeType[] _atts) throws SchemaException { + /* Changement de GISZoneCollection en GISDataModel, suppression des lignes dessous + String name = _zone.getTitle(); + if (name == null) { + name = "zone"; + }*/ + final FeatureType featureType = FeatureTypes.newFeatureType(_atts, "zone"); + return featureType; + } + + /** + * A utiliser pour des donn�es sensibles lorsque l'on veut que certains attributs soient retrouv� dans toutes les + * langues. + * + * @return true si on utilise l'ID de la variable pour construire l'attribut � inclure dans le fichier de sortie. + */ + protected boolean isUseIdAsName() { + return useIdAsName_; + } + + public void setUseIdAsName(final boolean _useIdAsName) { + useIdAsName_ = _useIdAsName; + } +} Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/PlanimetryGisSaver.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/PlanimetryGisSaver.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/PlanimetryGisSaver.java 2012-06-01 01:09:38 UTC (rev 7260) @@ -0,0 +1,22 @@ +package org.fudaa.fudaa.crue.planimetry.save; + +import java.io.File; +import org.fudaa.dodico.crue.metier.etude.EMHProjet; +import org.fudaa.fudaa.crue.planimetry.PlanimetryController; + +/** + * + * @author deniger ( genesis) + */ +public class PlanimetryGisSaver { + + EMHProjet target; + PlanimetryController controller; + + public void save() { + File dirOfConfig = target.getInfos().getDirOfConfig(); + controller.getNodeController().getNodeCollection(); + controller.getBrancheController().getBranchePosition(Long.MIN_VALUE); + + } +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-06-06 22:58:05
|
Revision: 7278 http://fudaa.svn.sourceforge.net/fudaa/?rev=7278&view=rev Author: deniger Date: 2012-06-06 22:57:59 +0000 (Wed, 06 Jun 2012) Log Message: ----------- Modified Paths: -------------- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingVisualTopComponent.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGisPaletteEdition.java Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingVisualTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingVisualTopComponent.java 2012-06-06 22:23:23 UTC (rev 7277) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingVisualTopComponent.java 2012-06-06 22:57:59 UTC (rev 7278) @@ -25,6 +25,7 @@ import org.fudaa.ebli.commun.EbliLib; import org.fudaa.fudaa.crue.modelling.services.ModellingScenarioVisuService; import org.fudaa.fudaa.crue.planimetry.PlanimetryVisuPanel; +import org.fudaa.fudaa.crue.planimetry.PlanimetryVisuPanelBuilder; import org.netbeans.api.settings.ConvertAsProperties; import org.openide.awt.ActionID; import org.openide.awt.ActionReference; @@ -128,7 +129,7 @@ main.setLayout(new BorderLayout()); panel.setPreferredSize(new Dimension(600, 700)); main.add(createToolbar(panel), BorderLayout.NORTH); - main.add(panel.createGisEditionPalette(), BorderLayout.EAST); + main.add(panel.createGisEditionPalette(), BorderLayout.WEST); main.add(panel); EventQueue.invokeLater(new Runnable() { @@ -170,17 +171,7 @@ } protected JComponent createToolbar(PlanimetryVisuPanel panel) { - List<EbliActionInterface> actions = panel.getController().getActions(); - final List tools = EbliLib.updateToolButtons(actions, null); - JToolBar bar = new JToolBar(); - for (Object object : tools) { - if (object == null) { - bar.addSeparator(); - } else { - bar.add((JComponent) object); - } - } - return bar; + return PlanimetryVisuPanelBuilder.buildTopComponent(panel); } private void scenarioUnloaded() { Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGisPaletteEdition.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGisPaletteEdition.java 2012-06-06 22:23:23 UTC (rev 7277) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGisPaletteEdition.java 2012-06-06 22:57:59 UTC (rev 7278) @@ -39,22 +39,15 @@ if (globalButtons_ == null) { globalButtons_ = new ArrayList(); fillGlobalActions(globalButtons_); - for (Iterator it = globalButtons_.iterator(); it.hasNext();) { - AbstractButton bt = (AbstractButton) it.next(); - if (bt == null) { - continue; - } - if (SEGMENT_ACTION.equals(bt.getActionCommand()) || ADD_MULTIPOINT_ACTION.equals(bt.getActionCommand())) { - it.remove(); - } - - } } for (Object object : globalButtons_) { if (object == null) { _dest.add(new JSeparator()); } else { - _dest.add((JComponent) object); + AbstractButton bt = (AbstractButton) object; + if (!SEGMENT_ACTION.equals(bt.getActionCommand()) && !ADD_MULTIPOINT_ACTION.equals(bt.getActionCommand())) { + _dest.add((JComponent) object); + } } } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-06-12 07:38:23
|
Revision: 7297 http://fudaa.svn.sourceforge.net/fudaa/?rev=7297&view=rev Author: deniger Date: 2012-06-12 07:38:16 +0000 (Tue, 12 Jun 2012) Log Message: ----------- Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/pom.xml trunk/soft/fudaa-crue/pom.xml trunk/soft/fudaa-crue/ui-application/pom.xml trunk/soft/fudaa-crue/ui-branding/pom.xml trunk/soft/fudaa-crue/ui-commandline/pom.xml trunk/soft/fudaa-crue/ui-common/pom.xml trunk/soft/fudaa-crue/ui-comparison/pom.xml trunk/soft/fudaa-crue/ui-emh/pom.xml trunk/soft/fudaa-crue/ui-loader/pom.xml trunk/soft/fudaa-crue/ui-modelling/pom.xml trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingComparisonOtherEtuAction.java 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-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/ConfigSaver.java trunk/soft/fudaa-crue/ui-post/pom.xml trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/services/PostServiceImpl.java trunk/soft/fudaa-crue/ui-study/pom.xml trunk/soft/fudaa-crue/ui-wrapper/pom.xml Modified: trunk/soft/fudaa-crue/crue-server/pom.xml =================================================================== --- trunk/soft/fudaa-crue/crue-server/pom.xml 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/crue-server/pom.xml 2012-06-12 07:38:16 UTC (rev 7297) @@ -4,7 +4,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.53-SNAPSHOT</version> + <version>0.54-SNAPSHOT</version> </parent> <artifactId>crue-server</artifactId> <name>Crue server</name> Modified: trunk/soft/fudaa-crue/pom.xml =================================================================== --- trunk/soft/fudaa-crue/pom.xml 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/pom.xml 2012-06-12 07:38:16 UTC (rev 7297) @@ -8,7 +8,7 @@ </parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.53-SNAPSHOT</version> + <version>0.54-SNAPSHOT</version> <name>Fudaa-Crue</name> <packaging>pom</packaging> <ciManagement> @@ -56,7 +56,14 @@ <groupId>org.fudaa.business.fudaa-sig</groupId> <artifactId>fudaa-sig</artifactId> <version>${fudaa-sig.version}</version> + <exclusions> + <exclusion> + <groupId>org.swinglabs</groupId> + <artifactId>swingx</artifactId> + </exclusion> + </exclusions> </dependency> + <!--pour les tests--> <dependency> <groupId>junit</groupId> @@ -75,6 +82,11 @@ <version>1.07.00</version> </dependency> <dependency> + <groupId>org.swinglabs.swingx</groupId> + <artifactId>swingx-all</artifactId> + <version>1.6.3</version> + </dependency> + <dependency> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>crue-server</artifactId> <version>${project.version}</version> Modified: trunk/soft/fudaa-crue/ui-application/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-application/pom.xml 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-application/pom.xml 2012-06-12 07:38:16 UTC (rev 7297) @@ -5,7 +5,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.53-SNAPSHOT</version> + <version>0.54-SNAPSHOT</version> </parent> <artifactId>application</artifactId> Modified: trunk/soft/fudaa-crue/ui-branding/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-branding/pom.xml 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-branding/pom.xml 2012-06-12 07:38:16 UTC (rev 7297) @@ -5,7 +5,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.53-SNAPSHOT</version> + <version>0.54-SNAPSHOT</version> </parent> <artifactId>ui-branding</artifactId> Modified: trunk/soft/fudaa-crue/ui-commandline/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-commandline/pom.xml 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-commandline/pom.xml 2012-06-12 07:38:16 UTC (rev 7297) @@ -5,7 +5,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.53-SNAPSHOT</version> + <version>0.54-SNAPSHOT</version> </parent> <artifactId>ui-commandline</artifactId> <packaging>nbm</packaging> Modified: trunk/soft/fudaa-crue/ui-common/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-common/pom.xml 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-common/pom.xml 2012-06-12 07:38:16 UTC (rev 7297) @@ -4,7 +4,7 @@ <parent> <artifactId>fudaa-crue</artifactId> <groupId>org.fudaa.soft.fudaa-crue</groupId> - <version>0.53-SNAPSHOT</version> + <version>0.54-SNAPSHOT</version> </parent> <artifactId>ui-common</artifactId> Modified: trunk/soft/fudaa-crue/ui-comparison/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-comparison/pom.xml 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-comparison/pom.xml 2012-06-12 07:38:16 UTC (rev 7297) @@ -4,7 +4,7 @@ <parent> <artifactId>fudaa-crue</artifactId> <groupId>org.fudaa.soft.fudaa-crue</groupId> - <version>0.53-SNAPSHOT</version> + <version>0.54-SNAPSHOT</version> </parent> <artifactId>ui-comparison</artifactId> <packaging>nbm</packaging> Modified: trunk/soft/fudaa-crue/ui-emh/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-emh/pom.xml 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-emh/pom.xml 2012-06-12 07:38:16 UTC (rev 7297) @@ -4,7 +4,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.53-SNAPSHOT</version> + <version>0.54-SNAPSHOT</version> </parent> <artifactId>ui-emh</artifactId> <packaging>nbm</packaging> Modified: trunk/soft/fudaa-crue/ui-loader/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-loader/pom.xml 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-loader/pom.xml 2012-06-12 07:38:16 UTC (rev 7297) @@ -4,7 +4,7 @@ <parent> <artifactId>fudaa-crue</artifactId> <groupId>org.fudaa.soft.fudaa-crue</groupId> - <version>0.53-SNAPSHOT</version> + <version>0.54-SNAPSHOT</version> </parent> <artifactId>ui-loader</artifactId> <packaging>nbm</packaging> Modified: trunk/soft/fudaa-crue/ui-modelling/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/pom.xml 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-modelling/pom.xml 2012-06-12 07:38:16 UTC (rev 7297) @@ -4,7 +4,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.53-SNAPSHOT</version> + <version>0.54-SNAPSHOT</version> </parent> <packaging>nbm</packaging> <artifactId>ui-modelling</artifactId> Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingComparisonOtherEtuAction.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingComparisonOtherEtuAction.java 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingComparisonOtherEtuAction.java 2012-06-12 07:38:16 UTC (rev 7297) @@ -4,7 +4,6 @@ */ package org.fudaa.fudaa.crue.modelling.action; -import java.awt.event.ActionEvent; import javax.swing.Action; import org.fudaa.dodico.crue.metier.etude.EMHProjet; import org.fudaa.fudaa.crue.comparison.ScenarioComparaisonLauncher; Modified: trunk/soft/fudaa-crue/ui-options/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-options/pom.xml 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-options/pom.xml 2012-06-12 07:38:16 UTC (rev 7297) @@ -4,7 +4,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.53-SNAPSHOT</version> + <version>0.54-SNAPSHOT</version> </parent> <artifactId>ui-options</artifactId> <name>Crue UI Options</name> Modified: trunk/soft/fudaa-crue/ui-otfa/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-otfa/pom.xml 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-otfa/pom.xml 2012-06-12 07:38:16 UTC (rev 7297) @@ -4,7 +4,7 @@ <parent> <artifactId>fudaa-crue</artifactId> <groupId>org.fudaa.soft.fudaa-crue</groupId> - <version>0.53-SNAPSHOT</version> + <version>0.54-SNAPSHOT</version> </parent> <artifactId>ui-otfa</artifactId> Modified: trunk/soft/fudaa-crue/ui-planimetry/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/pom.xml 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-planimetry/pom.xml 2012-06-12 07:38:16 UTC (rev 7297) @@ -4,7 +4,7 @@ <parent> <artifactId>fudaa-crue</artifactId> <groupId>org.fudaa.soft.fudaa-crue</groupId> - <version>0.53-SNAPSHOT</version> + <version>0.54-SNAPSHOT</version> </parent> <packaging>nbm</packaging> <artifactId>ui-planimetry</artifactId> Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/ConfigSaver.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/ConfigSaver.java 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/save/ConfigSaver.java 2012-06-12 07:38:16 UTC (rev 7297) @@ -59,7 +59,7 @@ Property property = entry.getValue(); final Class valueType = property.getValueType(); PropertyToStringTransformer transformer = createTransformers.get(valueType); - if(transformer==null){ + if (transformer == null) { Logger.getLogger(ConfigSaver.class.getName()).log(Level.SEVERE, "no transformer for {0}", valueType); } assert transformer != null; @@ -75,28 +75,25 @@ public LinkedHashMap<String, Property> getProperties(VisuConfiguration in, LayerVisibility visibility) { LinkedHashMap<String, Property> res = new LinkedHashMap<String, Property>(); - final VisuConfiguration visuConfiguration = new VisuConfiguration(); - Sheet.Set generalConfig = VisuConfigurationInfo.createSet(visuConfiguration); + Sheet.Set generalConfig = VisuConfigurationInfo.createSet(in); addProperties(res, generalConfig); - - List<Sheet.Set> sectionConfig = SectionConfigurationInfo.createSet(visuConfiguration.getSectionConfiguration()); + List<Sheet.Set> sectionConfig = SectionConfigurationInfo.createSet(in.getSectionConfiguration()); addVisibility(res, LayerVisibilityInfo.createSectionProperty(visibility)); addProperties(res, sectionConfig); - List<Sheet.Set> traceConfig = TraceConfigurationInfo.createSet(visuConfiguration.getTraceConfiguration()); + List<Sheet.Set> traceConfig = TraceConfigurationInfo.createSet(in.getTraceConfiguration()); addVisibility(res, LayerVisibilityInfo.createTraceProperty(visibility)); addProperties(res, traceConfig); - List<Sheet.Set> nodeConfig = NodeConfigurationInfo.createSet(visuConfiguration.getNodeConfiguration()); + List<Sheet.Set> nodeConfig = NodeConfigurationInfo.createSet(in.getNodeConfiguration()); addVisibility(res, LayerVisibilityInfo.createNodeProperty(visibility)); addProperties(res, nodeConfig); - List<Sheet.Set> brancheConfig = BrancheConfigurationInfo.createSet(visuConfiguration.getBrancheConfiguration()); - Color color = visuConfiguration.getBrancheConfiguration().getColor(EnumBrancheType.EMHBrancheBarrageFilEau); + List<Sheet.Set> brancheConfig = BrancheConfigurationInfo.createSet(in.getBrancheConfiguration()); addVisibility(res, LayerVisibilityInfo.createBrancheProperty(visibility)); addProperties(res, brancheConfig); - List<Sheet.Set> casierConfig = CasierConfigurationInfo.createSet(visuConfiguration.getCasierConfiguration()); + List<Sheet.Set> casierConfig = CasierConfigurationInfo.createSet(in.getCasierConfiguration()); addVisibility(res, LayerVisibilityInfo.createCasierProperty(visibility)); addProperties(res, casierConfig); return res; Modified: trunk/soft/fudaa-crue/ui-post/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-post/pom.xml 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-post/pom.xml 2012-06-12 07:38:16 UTC (rev 7297) @@ -4,7 +4,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.53-SNAPSHOT</version> + <version>0.54-SNAPSHOT</version> </parent> <packaging>nbm</packaging> <artifactId>ui-post</artifactId> Modified: trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/services/PostServiceImpl.java =================================================================== --- trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/services/PostServiceImpl.java 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-post/src/main/java/org/fudaa/fudaa/crue/post/services/PostServiceImpl.java 2012-06-12 07:38:16 UTC (rev 7297) @@ -1,20 +1,11 @@ package org.fudaa.fudaa.crue.post.services; import java.awt.EventQueue; -import java.util.Collection; -import java.util.List; import java.util.Map; import org.fudaa.dodico.crue.io.common.CrueFileType; -import org.fudaa.dodico.crue.metier.emh.CompteRendu; -import org.fudaa.dodico.crue.metier.emh.CompteRendusInfoEMH; -import org.fudaa.dodico.crue.metier.emh.EMHModeleBase; -import org.fudaa.dodico.crue.metier.emh.EMHScenario; -import org.fudaa.dodico.crue.metier.emh.EnumInfosEMH; -import org.fudaa.dodico.crue.metier.emh.InfosEMH; import org.fudaa.dodico.crue.metier.etude.EMHProjet; import org.fudaa.dodico.crue.metier.etude.EMHRun; import org.fudaa.dodico.crue.metier.etude.ManagerEMHScenario; -import org.fudaa.dodico.crue.metier.helper.EMHHelper; import org.fudaa.dodico.crue.projet.calcul.CalculCrueRunnerManager; import org.fudaa.dodico.crue.projet.calcul.ExecInputDefault; import org.fudaa.dodico.crue.projet.coeur.CoeurConfigContrat; Modified: trunk/soft/fudaa-crue/ui-study/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-study/pom.xml 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-study/pom.xml 2012-06-12 07:38:16 UTC (rev 7297) @@ -4,7 +4,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.53-SNAPSHOT</version> + <version>0.54-SNAPSHOT</version> </parent> <packaging>nbm</packaging> <artifactId>ui-study</artifactId> Modified: trunk/soft/fudaa-crue/ui-wrapper/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-wrapper/pom.xml 2012-06-11 23:47:45 UTC (rev 7296) +++ trunk/soft/fudaa-crue/ui-wrapper/pom.xml 2012-06-12 07:38:16 UTC (rev 7297) @@ -4,7 +4,7 @@ <parent> <artifactId>fudaa-crue</artifactId> <groupId>org.fudaa.soft.fudaa-crue</groupId> - <version>0.53-SNAPSHOT</version> + <version>0.54-SNAPSHOT</version> </parent> <artifactId>ui-wrapper</artifactId> @@ -26,9 +26,10 @@ <artifactId>fudaa-sig</artifactId> </dependency> <dependency> - <groupId>org.fudaa.framework.ebli</groupId> - <artifactId>ebli-2d</artifactId> + <groupId>org.swinglabs.swingx</groupId> + <artifactId>swingx-all</artifactId> </dependency> + </dependencies> <build> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-06-14 07:07:16
|
Revision: 7338 http://fudaa.svn.sourceforge.net/fudaa/?rev=7338&view=rev Author: deniger Date: 2012-06-14 07:07:04 +0000 (Thu, 14 Jun 2012) Log Message: ----------- Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/services/ModellingScenarioService.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/AbstractModellingTopComponent.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingActionsTopComponent.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingEMHTopComponent.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingFilesTopComponent.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingListBrancheTopComponent.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingListCasierTopComponent.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingListNoeudTopComponent.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingListSectionTopComponent.java 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/ModellingVisualTopComponent.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingSaveGeoLocCallable.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingSaveScenarioCallable.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingSaveStudyConfigCallable.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingScenarioModificationService.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingScenarioServiceImpl.java Added Paths: ----------- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ScenarioModificationEvent.java Modified: trunk/soft/fudaa-crue/crue-server/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/crue-server/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties 2012-06-14 07:07:04 UTC (rev 7338) @@ -755,4 +755,9 @@ configEtu.unknownProperty.Error=La propri\u00e9t\u00e9 {0} n''est pas reconnue par Fudaa-Crue configEtu.unknownType.Error=Le type de donn\u00e9e {0} n''est pas g\u00e9r\u00e9 par Fudaa-Crue configEtu.badValue.Error=la valeur {1} pour la propri\u00e9t\u00e9 {0} n''est pas valide -configEtu.valueCantBeSet.Error=la valeur {1} pour la propri\u00e9t\u00e9 {0} ne peut pas \u00eatre utilis\u00e9e \ No newline at end of file +configEtu.valueCantBeSet.Error=la valeur {1} pour la propri\u00e9t\u00e9 {0} ne peut pas \u00eatre utilis\u00e9e + +save.geoloc.done=Donn\u00e9es de g\u00e9olocalisation enregistr\u00e9es +save.configEtu.done=Configuration de niveau \u00e9tude enregistr\u00e9e +save.scenario.done=Sc\u00e9nario enregistr\u00e9 +save.scenario.file.done=Fichier {0} enregistr\u00e9 \ No newline at end of file Modified: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/services/ModellingScenarioService.java =================================================================== --- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/services/ModellingScenarioService.java 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/services/ModellingScenarioService.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -21,6 +21,8 @@ boolean unloadScenario(); + boolean isReloading(); + boolean loadScenario(EMHProjet projet, ManagerEMHScenario scenario); EMHScenario getScenarioLoaded(); Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/AbstractModellingTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/AbstractModellingTopComponent.java 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/AbstractModellingTopComponent.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -1,8 +1,15 @@ package org.fudaa.fudaa.crue.modelling; import java.awt.EventQueue; +import java.awt.FlowLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; +import java.util.Observable; +import java.util.Observer; +import javax.swing.JButton; +import javax.swing.JPanel; import org.apache.commons.lang.StringUtils; import org.fudaa.dodico.crue.metier.emh.EMHScenario; import org.fudaa.fudaa.crue.common.AbstractTopComponent; @@ -11,6 +18,7 @@ import org.fudaa.fudaa.crue.common.services.ModellingScenarioService; import org.fudaa.fudaa.crue.modelling.perspective.PerspectiveServiceModelling; import org.fudaa.fudaa.crue.modelling.services.ModellingScenarioModificationService; +import org.fudaa.fudaa.crue.modelling.services.ScenarioModificationEvent; import org.openide.util.Lookup; import org.openide.util.LookupEvent; import org.openide.util.LookupListener; @@ -27,8 +35,10 @@ protected PerspectiveServiceModelling perspectiveServiceModelling = Lookup.getDefault().lookup(PerspectiveServiceModelling.class); protected ModellingScenarioModificationService modellingScenarioModificationService = Lookup.getDefault().lookup( ModellingScenarioModificationService.class); - protected ModellingScenarioService scenarioService = Lookup.getDefault().lookup(ModellingScenarioService.class); +// protected ModellingScenarioService scenarioService = Lookup.getDefault().lookup(ModellingScenarioService.class); boolean modified; + private JButton buttonSave; + private JButton buttonCancel; public void setModified(boolean modified) { this.modified = modified; @@ -41,9 +51,63 @@ } else if (!modified && name.endsWith(END_NAME_IF_MODIFIED)) { setName(StringUtils.removeEnd(name, END_NAME_IF_MODIFIED)); } + if (buttonSave != null) { + buttonSave.setEnabled(modified); + } + if (buttonCancel != null) { + buttonCancel.setEnabled(modified); + } + } + private class ModificationObserver implements Observer { + + @Override + public void update(Observable o, Object arg) { + scenarioChanged((ScenarioModificationEvent) arg); + } } + ModificationObserver modificationObserver; + /** + * A redefinir pour ne modifier les données que si nécessaire. + * @param event + */ + protected void scenarioChanged(ScenarioModificationEvent event) { + scenarioReloaded(); + } + + protected ModellingScenarioService getModellingService() { + return modellingScenarioModificationService.getModellingScenarioService(); + } + + protected JPanel createCancelSaveButtons() { + assert buttonSave == null; + buttonSave = new JButton(); + buttonSave.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + valideModification(); + } + }); + buttonSave.setText(NbBundle.getMessage(AbstractModellingTopComponent.class, "ValidationVue.ValidAction")); + buttonCancel = new JButton(); + buttonCancel.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + cancelModification(); + } + }); + buttonCancel.setText(NbBundle.getMessage(AbstractModellingTopComponent.class, "ValidationVue.CancelAction")); + JPanel bottom = new JPanel(new FlowLayout(FlowLayout.RIGHT)); + bottom.add(buttonCancel); + bottom.add(buttonSave); + buttonCancel.setEnabled(modified); + buttonSave.setEnabled(modified); + return bottom; + } + protected abstract void scenarioLoaded(); protected abstract void scenarioUnloaded(); @@ -71,13 +135,29 @@ @Override public final void resultChanged(LookupEvent ev) { - if (scenarioService.isScenarioLoaded()) { + if (getModellingService().isReloading()) { + if (getModellingService().isScenarioLoaded()) { + scenarioReloaded(); + } + } else if (getModellingService().isScenarioLoaded()) { + modificationObserver = new ModificationObserver(); + modellingScenarioModificationService.addObserver(modificationObserver); scenarioLoaded(); } else { - scenarioUnloaded(); + cleanTopComponent(); } } + private void cleanTopComponent() { + scenarioUnloaded(); + if (modificationObserver != null) { + modellingScenarioModificationService.deleteObserver(modificationObserver); + modificationObserver = null; + } + buttonCancel = null; + buttonSave = null; + } + protected void updateEditableState() { setEditable(WindowManager.getDefault().getRegistry().getActivated() == this && perspectiveServiceModelling.isInEditMode()); } @@ -88,7 +168,7 @@ resultat.removeLookupListener(this); resultat = null; } - scenarioUnloaded(); + cleanTopComponent(); componentClosedDefinitlyHandler(); } @@ -114,7 +194,7 @@ protected final void componentOpened() { super.componentOpened(); if (resultat == null) { - resultat = scenarioService.getLookup().lookupResult(EMHScenario.class); + resultat = getModellingService().getLookup().lookupResult(EMHScenario.class); resultat.addLookupListener(this); resultChanged(null); } Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingActionsTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingActionsTopComponent.java 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingActionsTopComponent.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -93,7 +93,7 @@ @Override protected void scenarioLoaded() { - em.setRootContext(GlobalActionChildFactory.createGlobalActionsNode(scenarioService.getScenarioLoaded())); + em.setRootContext(GlobalActionChildFactory.createGlobalActionsNode(getModellingService().getScenarioLoaded())); } @Override Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingEMHTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingEMHTopComponent.java 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingEMHTopComponent.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -53,7 +53,8 @@ @Override protected void scenarioLoaded() { - EMHTreePanel emhTreePanel = new EMHTreePanel(scenarioService.getSelectedProjet(), scenarioService.getScenarioLoaded()); + EMHTreePanel emhTreePanel = new EMHTreePanel(getModellingService().getSelectedProjet(), + getModellingService().getScenarioLoaded()); this.removeAll(); this.add(new JScrollPane(emhTreePanel.build())); this.repaint(); Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingFilesTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingFilesTopComponent.java 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingFilesTopComponent.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -19,6 +19,7 @@ import org.netbeans.api.settings.ConvertAsProperties; import org.openide.awt.ActionID; import org.openide.util.Lookup; +import org.openide.util.LookupEvent; import org.openide.util.LookupListener; /** @@ -40,6 +41,7 @@ public static final String TOPCOMPONENT_ACTION_DISPLAYNAME = "#" + TOPCOMPONENT_ACTION; private ModellingScenarioVisuService scenarioVisuService = Lookup.getDefault().lookup( ModellingScenarioVisuService.class); + private Lookup.Result<PlanimetryVisuPanel> resultatVisuPanel; public ModellingFilesTopComponent() { initComponents(); @@ -65,8 +67,14 @@ PlanimetryVisuPanel panel; BArbreCalque bArbreCalque; + /** + * rien a faire: on attend le visu panel + */ @Override protected void scenarioLoaded() { + } + + protected void scenarioVisuLoaded() { panel = scenarioVisuService.getPlanimetryVisuPanel(); this.removeAll(); bArbreCalque = new BArbreCalque(panel.getArbreCalqueModel()); @@ -93,9 +101,11 @@ @Override protected void scenarioUnloaded() { - List<BCalque> mainLayers = panel.getPlanimetryController().getMainLayers(); - for (BCalque bCalque : mainLayers) { - bCalque.removePropertyChangeListener(BSelecteurCheckBox.PROP_VISIBLE, this); + if (panel != null) { + List<BCalque> mainLayers = panel.getPlanimetryController().getMainLayers(); + for (BCalque bCalque : mainLayers) { + bCalque.removePropertyChangeListener(BSelecteurCheckBox.PROP_VISIBLE, this); + } } this.removeAll(); bArbreCalque = null; @@ -132,4 +142,24 @@ String version = p.getProperty("version"); // TODO read your settings according to their version } + + private class VisuPanelLookupListener implements LookupListener { + + @Override + public void resultChanged(LookupEvent ev) { + if (scenarioVisuService.getPlanimetryVisuPanel() != null) { + scenarioVisuLoaded(); + } + } + } + VisuPanelLookupListener visuLookupListener; + + @Override + protected void componentOpenedHandler() { + if (resultatVisuPanel == null) { + visuLookupListener = new VisuPanelLookupListener(); + resultatVisuPanel = scenarioVisuService.getLookup().lookupResult(PlanimetryVisuPanel.class); + resultatVisuPanel.addLookupListener(visuLookupListener); + } + } } Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingListBrancheTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingListBrancheTopComponent.java 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingListBrancheTopComponent.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -46,7 +46,8 @@ @Override protected void scenarioLoaded() { - EMHTreePanel emhTreePanel = new EMHTreePanel(scenarioService.getSelectedProjet(), scenarioService.getScenarioLoaded()); + EMHTreePanel emhTreePanel = new EMHTreePanel(getModellingService().getSelectedProjet(), + getModellingService().getScenarioLoaded()); this.removeAll(); this.add(new JScrollPane(emhTreePanel.build())); this.repaint(); @@ -74,8 +75,6 @@ setLayout(new java.awt.BorderLayout()); }// </editor-fold>//GEN-END:initComponents - // Variables declaration - do not modify//GEN-BEGIN:variables // End of variables declaration//GEN-END:variables - } Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingListCasierTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingListCasierTopComponent.java 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingListCasierTopComponent.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -52,7 +52,7 @@ @Override protected void scenarioLoaded() { - EMHTreePanel emhTreePanel = new EMHTreePanel(scenarioService.getSelectedProjet(), scenarioService.getScenarioLoaded()); + EMHTreePanel emhTreePanel = new EMHTreePanel(getModellingService().getSelectedProjet(), getModellingService().getScenarioLoaded()); this.removeAll(); this.add(new JScrollPane(emhTreePanel.build())); this.repaint(); Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingListNoeudTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingListNoeudTopComponent.java 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingListNoeudTopComponent.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -46,7 +46,7 @@ @Override protected void scenarioLoaded() { - EMHTreePanel emhTreePanel = new EMHTreePanel(scenarioService.getSelectedProjet(), scenarioService.getScenarioLoaded()); + EMHTreePanel emhTreePanel = new EMHTreePanel(getModellingService().getSelectedProjet(), getModellingService().getScenarioLoaded()); this.removeAll(); this.add(new JScrollPane(emhTreePanel.build())); this.repaint(); Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingListSectionTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingListSectionTopComponent.java 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingListSectionTopComponent.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -52,7 +52,7 @@ @Override protected void scenarioLoaded() { - EMHTreePanel emhTreePanel = new EMHTreePanel(scenarioService.getSelectedProjet(), scenarioService.getScenarioLoaded()); + EMHTreePanel emhTreePanel = new EMHTreePanel(getModellingService().getSelectedProjet(), getModellingService().getScenarioLoaded()); this.removeAll(); this.add(new JScrollPane(emhTreePanel.build())); this.repaint(); 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 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingNetworkTopComponent.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -101,12 +101,12 @@ @Override protected void scenarioLoaded() { - em.setRootContext(HierarchyChildFactory.createScenarioNode(scenarioService.getScenarioLoaded())); + em.setRootContext(HierarchyChildFactory.createScenarioNode(getModellingService().getScenarioLoaded())); } @Override protected void scenarioReloaded() { - em.setRootContext(HierarchyChildFactory.createScenarioNode(scenarioService.getScenarioLoaded())); + em.setRootContext(HierarchyChildFactory.createScenarioNode(getModellingService().getScenarioLoaded())); } @Override Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingVisualTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingVisualTopComponent.java 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/ModellingVisualTopComponent.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -7,9 +7,6 @@ import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.EventQueue; -import java.awt.FlowLayout; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.beans.PropertyVetoException; @@ -17,11 +14,9 @@ import java.util.Collection; import java.util.List; import javax.swing.ActionMap; -import javax.swing.JButton; import javax.swing.JComponent; import javax.swing.JLabel; import javax.swing.JPanel; -import org.apache.commons.lang.StringUtils; import org.fudaa.dodico.crue.metier.emh.EMH; import org.fudaa.ebli.calque.ZSelectionEvent; import org.fudaa.ebli.calque.ZSelectionListener; @@ -113,6 +108,7 @@ panel.getPlanimetryController().cancel(); setModified(false); } + boolean isUpdatingFromHere; @Override public void valideModification() { @@ -128,7 +124,10 @@ modellingScenarioModificationService.setStudyConfigModified(); } if (scenarioModified) { - modellingScenarioModificationService.setScenarioModified(); + isUpdatingFromHere = true; + modellingScenarioModificationService.setScenarioModifiedMassive( + panel.getPlanimetryController().getPlanimetryGisAttributeContext().getScenario()); + isUpdatingFromHere = false; } setModified(false); } @@ -145,26 +144,8 @@ return; } super.setModified(modified); - if (lbModified != null) { - buttonCancel.setEnabled(modified); - buttonSave.setEnabled(modified); - lbModified.setText( - modified ? NbBundle.getMessage(ModellingVisualTopComponent.class, "ValidationVue.Modified.Label") : StringUtils.EMPTY); - } } - private class VisuPanelLookupListener implements LookupListener { - - @Override - public void resultChanged(LookupEvent ev) { - if (scenarioVisuService.getPlanimetryVisuPanel() != null) { - scenarioVisuLoaded(); - } else { - scenarioUnloaded(); - } - } - } - @Override protected void scenarioLoaded() { if (scenarioVisuService.getPlanimetryVisuPanel() != null) { @@ -185,32 +166,7 @@ main.add(panel.createGisEditionPalette(), BorderLayout.WEST); main.add(panel); add(main); - buttonSave = new JButton(); - buttonSave.addActionListener(new ActionListener() { - - @Override - public void actionPerformed(ActionEvent e) { - valideModification(); - } - }); - buttonSave.setText(NbBundle.getMessage(ModellingVisualTopComponent.class, "ValidationVue.ValidAction")); - buttonCancel = new JButton(); - buttonCancel.addActionListener(new ActionListener() { - - @Override - public void actionPerformed(ActionEvent e) { - cancelModification(); - } - }); - buttonCancel.setText(NbBundle.getMessage(ModellingVisualTopComponent.class, "ValidationVue.CancelAction")); - lbModified = new JLabel(); - JPanel bottom = new JPanel(new FlowLayout(FlowLayout.RIGHT)); - bottom.add(buttonCancel); - bottom.add(buttonSave); - bottom.add(lbModified); - buttonCancel.setEnabled(false); - buttonSave.setEnabled(false); - main.add(bottom, BorderLayout.SOUTH); + main.add(createCancelSaveButtons(), BorderLayout.SOUTH); this.repaint(); super.revalidate(); EventQueue.invokeLater(new Runnable() { @@ -230,9 +186,6 @@ } }; PlanimetryVisuPanel panel; - JLabel lbModified; - private JButton buttonSave; - private JButton buttonCancel; LayerSelectionListener selectionListener = null; SelectedNodeLookupListener selectedNodeLookupListener; @@ -275,8 +228,9 @@ */ @Override protected void scenarioReloaded() { - if (panel != null) { - panel.getPlanimetryController().reload(scenarioService.getScenarioLoaded()); + //si le scenario est mis à jour depuis ce composant, on fait rien + if (panel != null && isUpdatingFromHere) { + panel.getPlanimetryController().reload(getModellingService().getScenarioLoaded()); } } @@ -291,9 +245,6 @@ panel.getScene().removeSelectionListener(selectionListener); } panel = null; - lbModified = null; - buttonCancel = null; - buttonSave = null; this.removeAll(); this.add(new JLabel(MessagesModelling.getMessage("emhTopComponent.NoScenarioLoadedInformations"))); super.revalidate(); @@ -311,6 +262,16 @@ }// </editor-fold>//GEN-END:initComponents // Variables declaration - do not modify//GEN-BEGIN:variables // End of variables declaration//GEN-END:variables + + private class VisuPanelLookupListener implements LookupListener { + + @Override + public void resultChanged(LookupEvent ev) { + if (scenarioVisuService.getPlanimetryVisuPanel() != null) { + scenarioVisuLoaded(); + } + } + } VisuPanelLookupListener visuLookupListener; @Override Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingSaveGeoLocCallable.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingSaveGeoLocCallable.java 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingSaveGeoLocCallable.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -1,7 +1,9 @@ package org.fudaa.fudaa.crue.modelling.services; import java.util.concurrent.Callable; +import org.fudaa.ctulu.CtuluLog; import org.fudaa.ctulu.CtuluLogGroup; +import org.fudaa.dodico.crue.common.BusinessMessages; import org.fudaa.fudaa.crue.common.services.ModellingScenarioService; import org.fudaa.fudaa.crue.planimetry.save.PlanimetryGisSaver; import org.openide.util.Lookup; @@ -30,6 +32,8 @@ modellingScenarioVisuService.getPlanimetryVisuPanel().getPlanimetryController()); saver.save(modellingScenarioService.getSelectedProjet().getInfos().getDirOfConfig()); modellingScenarioModificationService.clearGeoLocModifiedState(); - return null; + CtuluLogGroup gr=new CtuluLogGroup(BusinessMessages.RESOURCE_BUNDLE); + gr.setDescription("save.geoloc.done"); + return gr; } } Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingSaveScenarioCallable.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingSaveScenarioCallable.java 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingSaveScenarioCallable.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -5,7 +5,9 @@ import java.util.Map; import java.util.concurrent.Callable; import org.fudaa.ctulu.CtuluLibFile; +import org.fudaa.ctulu.CtuluLog; import org.fudaa.ctulu.CtuluLogGroup; +import org.fudaa.dodico.crue.common.BusinessMessages; import org.fudaa.dodico.crue.common.CrueFileHelper; import org.fudaa.dodico.crue.metier.etude.ManagerEMHScenario; import org.fudaa.dodico.crue.projet.ScenarioSaver; @@ -45,6 +47,8 @@ if (saveWithScenarioType.containsFatalError()) { return saveWithScenarioType; } + CtuluLogGroup res = new CtuluLogGroup(BusinessMessages.RESOURCE_BUNDLE); + CtuluLog log = res.createNewLog("save.scenario.done"); Map<String, File> savedFiles = modellingScenarioServiceImpl.getSelectedProjet().getInputFiles(managerScenarioLoaded, dir); Map<String, File> destFiles = modellingScenarioServiceImpl.getSelectedProjet().getInputFiles(managerScenarioLoaded); for (Map.Entry<String, File> entry : savedFiles.entrySet()) { @@ -53,12 +57,15 @@ File destFile = destFiles.get(id); if (!destFile.exists()) { CrueFileHelper.copyFileWithSameLastModifiedDate(savedFile, destFile); + log.addInfo("save.scenario.file.done", id); } else if (CrueFileHelper.isDifferentFiles(savedFile, destFile)) { CrueFileHelper.copyFileWithSameLastModifiedDate(savedFile, destFile); + log.addInfo("save.scenario.file.done", id); } } modellingScenarioModificationService.clearScenarioModifiedState(); - return saveWithScenarioType; + res.addGroup(saveWithScenarioType); + return res; } public File getTargetDir() { Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingSaveStudyConfigCallable.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingSaveStudyConfigCallable.java 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingSaveStudyConfigCallable.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -8,6 +8,7 @@ import java.util.concurrent.Callable; import org.apache.commons.lang.StringUtils; import org.fudaa.ctulu.CtuluLogGroup; +import org.fudaa.dodico.crue.common.BusinessMessages; import org.fudaa.dodico.crue.io.conf.CrueEtudeConfigurationHelper; import org.fudaa.fudaa.crue.common.services.ModellingScenarioService; import org.fudaa.fudaa.crue.planimetry.controller.PlanimetryController; @@ -49,6 +50,8 @@ } File destDir = modellingScenarioService.getSelectedProjet().getInfos().getDirOfConfig(); CrueEtudeConfigurationHelper.write(new File(destDir, ModellingScenarioVisuService.CONFIG_ETU), customProperties); - return null; + CtuluLogGroup gr=new CtuluLogGroup(BusinessMessages.RESOURCE_BUNDLE); + gr.setDescription("save.configEtu.done"); + return gr; } } Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingScenarioModificationService.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingScenarioModificationService.java 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingScenarioModificationService.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -2,6 +2,10 @@ import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; +import java.util.Observable; +import java.util.Observer; +import org.fudaa.dodico.crue.metier.emh.EMHScenario; +import org.fudaa.fudaa.crue.common.services.ModellingScenarioService; import org.fudaa.fudaa.crue.common.services.ModificationStateContainer; import org.fudaa.fudaa.crue.modelling.perspective.PerspectiveServiceModelling; import org.openide.util.Lookup; @@ -13,9 +17,8 @@ * @author deniger ( genesis) */ @ServiceProvider(service = ModellingScenarioModificationService.class) -public class ModellingScenarioModificationService implements PropertyChangeListener { +public class ModellingScenarioModificationService extends Observable implements PropertyChangeListener { - PerspectiveServiceModelling perpective = Lookup.getDefault().lookup(PerspectiveServiceModelling.class); /** * les données de niveau scenario sont modifiées */ @@ -29,11 +32,16 @@ */ public static final String PROPERTY_STUDYCONFIG_MODIFIED = "studyConfigModified"; ModificationStateContainer modificationStateContainer = new ModificationStateContainer(); + ModellingScenarioServiceImpl modellingScenarioServiceImpl = Lookup.getDefault().lookup(ModellingScenarioServiceImpl.class); public ModellingScenarioModificationService() { modificationStateContainer.addModifiedListener(this); } + public ModellingScenarioService getModellingScenarioService() { + return modellingScenarioServiceImpl; + } + public void addModifiedListener(PropertyChangeListener listener) { modificationStateContainer.addModifiedListener(listener); } @@ -42,18 +50,31 @@ modificationStateContainer.removeModifiedListener(listener); } - - public void clearGeoLocModifiedState() { modificationStateContainer.clearModifiedState(PROPERTY_GEOLOC_MODIFIED); } - public void setGeoLocModified() { + + public void setGeoLocModified() { modificationStateContainer.setModified(PROPERTY_GEOLOC_MODIFIED); } - public void setScenarioModified() { + + /** + * Utilise si modification massive. + * @param newScenario + */ + public void setScenarioModifiedMassive(EMHScenario newScenario) { + modellingScenarioServiceImpl.reload(newScenario); modificationStateContainer.setModified(PROPERTY_SCENARIO_MODIFIED); } - public void setStudyConfigModified() { + + public void setScenarioModified(ScenarioModificationEvent event) { + modificationStateContainer.setModified(PROPERTY_SCENARIO_MODIFIED); + setChanged(); + notifyObservers(event); + clearChanged(); + } + + public void setStudyConfigModified() { modificationStateContainer.setModified(PROPERTY_STUDYCONFIG_MODIFIED); } @@ -68,8 +89,8 @@ public boolean isGeoLocModified() { return modificationStateContainer.isModified(PROPERTY_GEOLOC_MODIFIED); } - - public boolean isStudyConfigModified() { + + public boolean isStudyConfigModified() { return modificationStateContainer.isModified(PROPERTY_STUDYCONFIG_MODIFIED); } @@ -79,6 +100,7 @@ @Override public void propertyChange(PropertyChangeEvent evt) { + PerspectiveServiceModelling perpective = Lookup.getDefault().lookup(PerspectiveServiceModelling.class); perpective.setDirty(modificationStateContainer.isModified()); } Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingScenarioServiceImpl.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingScenarioServiceImpl.java 2012-06-14 06:20:47 UTC (rev 7337) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ModellingScenarioServiceImpl.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -5,6 +5,7 @@ import java.io.IOException; import org.fudaa.ctulu.CtuluLibFile; import org.fudaa.ctulu.CtuluLogGroup; +import org.fudaa.dodico.crue.metier.emh.EMHScenario; import org.fudaa.dodico.crue.metier.etude.EMHProjet; import org.fudaa.dodico.crue.metier.etude.ManagerEMHScenario; import org.fudaa.fudaa.crue.common.PerspectiveEnum; @@ -109,4 +110,26 @@ return !logs.containsFatalError(); } + boolean reloading; + + @Override + public boolean isReloading() { + return reloading; + } + + /** + * A utiliser dans le thread swing + * @param newScenario + */ + void reload(EMHScenario newScenario) { + assert EventQueue.isDispatchThread(); + //l'ordre est important: + reloading = true; + final EMHScenario scenarioLoaded = getScenarioLoaded(); + if (scenarioLoaded != null) { + dynamicContent.remove(scenarioLoaded); + } + dynamicContent.add(newScenario); + reloading = false; + } } Added: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ScenarioModificationEvent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ScenarioModificationEvent.java (rev 0) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/ScenarioModificationEvent.java 2012-06-14 07:07:04 UTC (rev 7338) @@ -0,0 +1,9 @@ +package org.fudaa.fudaa.crue.modelling.services; + +/** + * + * @author deniger ( genesis) + */ +public class ScenarioModificationEvent { + +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-06-14 21:29:59
|
Revision: 7341 http://fudaa.svn.sourceforge.net/fudaa/?rev=7341&view=rev Author: deniger Date: 2012-06-14 21:29:53 +0000 (Thu, 14 Jun 2012) Log Message: ----------- Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidationPatternHelper.java trunk/soft/fudaa-crue/ui-application/src/main/resources/etc/fudaacrue.conf Added Paths: ----------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionRename.java Added: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionRename.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionRename.java (rev 0) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionRename.java 2012-06-14 21:29:53 UTC (rev 7341) @@ -0,0 +1,15 @@ +package org.fudaa.dodico.crue.edition; + +import java.util.ArrayList; +import java.util.List; +import org.fudaa.dodico.crue.metier.emh.EnumCatEMH; +import org.fudaa.dodico.crue.metier.factory.CruePrefix; + +/** + * + * @author deniger ( genesis) + */ +public class EditionRename { + + +} Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidationPatternHelper.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidationPatternHelper.java 2012-06-14 21:12:15 UTC (rev 7340) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidationPatternHelper.java 2012-06-14 21:29:53 UTC (rev 7341) @@ -1,5 +1,7 @@ package org.fudaa.dodico.crue.validation; +import java.util.ArrayList; +import java.util.List; import java.util.Set; import java.util.regex.Pattern; import org.apache.commons.lang.StringUtils; @@ -23,10 +25,15 @@ } public static boolean isNameValide(String name, EnumCatEMH type) { + + String prefix = CruePrefix.getPrefix(type); + return isNameValid(name, prefix); + } + + private static boolean isNameValid(String name, String prefix) { if (StringUtils.isBlank(name)) { return false; } - String prefix = CruePrefix.getPrefix(type); if (!name.startsWith(prefix)) { return false; } @@ -36,6 +43,17 @@ return getNamePattern().matcher(StringUtils.removeStart(name, prefix)).matches(); } + public static List<String> findInvalidName(List<String> name, EnumCatEMH type) { + String prefix = CruePrefix.getPrefix(type); + List<String> res = new ArrayList<String>(); + for (String string : name) { + if (!isNameValid(string, prefix)) { + res.add(string); + } + } + return name; + } + public static String isRadicalValideMsg(String radical) { if (StringUtils.isBlank(radical)) { return "validation.name.isBlank.error"; Modified: trunk/soft/fudaa-crue/ui-application/src/main/resources/etc/fudaacrue.conf =================================================================== --- trunk/soft/fudaa-crue/ui-application/src/main/resources/etc/fudaacrue.conf 2012-06-14 21:12:15 UTC (rev 7340) +++ trunk/soft/fudaa-crue/ui-application/src/main/resources/etc/fudaacrue.conf 2012-06-14 21:29:53 UTC (rev 7341) @@ -1,6 +1,6 @@ # ${HOME} will be replaced by user home directory according to platform -default_userdir="${HOME}/.${APPNAME}/0.54/" -default_mac_userdir="${HOME}/Library/Application Support/${APPNAME}/0.54/" +default_userdir="${HOME}/.${APPNAME}/0.54-SNAPSHOT/" +default_mac_userdir="${HOME}/Library/Application Support/${APPNAME}/0.54-SNAPSHOT/" # options used by the launcher by default, can be overridden by explicit # command line switches This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-06-14 21:12:21
|
Revision: 7340 http://fudaa.svn.sourceforge.net/fudaa/?rev=7340&view=rev Author: deniger Date: 2012-06-14 21:12:15 +0000 (Thu, 14 Jun 2012) Log Message: ----------- Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/io/neuf/DCFileReader.java trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/projet/ScenarioLoader.java trunk/soft/fudaa-crue/crue-server/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/io/ReadHelper.java trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/ModellingTestHelper.java Added Paths: ----------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidatorSousModeleContent.java trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/validation/TestValidatorSousModeleContent.java Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/io/neuf/DCFileReader.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/io/neuf/DCFileReader.java 2012-06-14 19:21:35 UTC (rev 7339) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/io/neuf/DCFileReader.java 2012-06-14 21:12:15 UTC (rev 7340) @@ -92,6 +92,7 @@ import com.thoughtworks.xstream.converters.SingleValueConverter; import org.fudaa.dodico.crue.config.SeveriteManager; +import org.fudaa.dodico.crue.metier.emh.RelationEMHDansSousModele; /** * Reader pour le format DC crue 9. @@ -2438,6 +2439,7 @@ } } } + newSection.addRelationEMH(new RelationEMHDansSousModele(metier.getSousModele())); // on met a jour les relations. final Collection<RelationEMHBrancheContientSection> findRelationOfType = EMHHelper.selectRelationOfType( sectionToreplace, RelationEMHBrancheContientSection.class); Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/projet/ScenarioLoader.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/projet/ScenarioLoader.java 2012-06-14 19:21:35 UTC (rev 7339) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/projet/ScenarioLoader.java 2012-06-14 21:12:15 UTC (rev 7340) @@ -29,6 +29,7 @@ import org.fudaa.dodico.crue.validation.ValidatorForValuesAndContents; import org.fudaa.dodico.crue.validation.ValidationHelper; import org.fudaa.dodico.crue.validation.ValidatorNumberOfData; +import org.fudaa.dodico.crue.validation.ValidatorSousModeleContent; /** * Classe qui se charge de charger en memoire un scénario donné. @@ -147,6 +148,7 @@ } validators.add(new ValidatorForValuesAndContents(crueConfigMetier)); validators.add(new ValidatorNumberOfData(crueConfigMetier)); + validators.add(new ValidatorSousModeleContent()); ValidationHelper.validateAll(validationBilan, emhScenario, validators); return validationBilan; } Added: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidatorSousModeleContent.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidatorSousModeleContent.java (rev 0) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidatorSousModeleContent.java 2012-06-14 21:12:15 UTC (rev 7340) @@ -0,0 +1,137 @@ +package org.fudaa.dodico.crue.validation; + +import java.util.ArrayList; +import java.util.List; +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.metier.emh.CatEMHBranche; +import org.fudaa.dodico.crue.metier.emh.CatEMHCasier; +import org.fudaa.dodico.crue.metier.emh.CatEMHNoeud; +import org.fudaa.dodico.crue.metier.emh.CatEMHSection; +import org.fudaa.dodico.crue.metier.emh.EMH; +import org.fudaa.dodico.crue.metier.emh.EMHModeleBase; +import org.fudaa.dodico.crue.metier.emh.EMHScenario; +import org.fudaa.dodico.crue.metier.emh.EMHSousModele; +import org.fudaa.dodico.crue.metier.emh.RelationEMHSectionDansBranche; +import org.fudaa.dodico.crue.metier.transformer.TransformerHelper; + +/** + * + * @author deniger ( genesis) + */ +public class ValidatorSousModeleContent implements CrueValidator { + + @Override + public List<CtuluLog> getLogs() { + throw new UnsupportedOperationException("Not supported yet."); + } + + public void validCasier(CatEMHCasier casier, + Set<String> nodesId, CtuluLog error) { + CatEMHNoeud noeud = casier.getNoeud(); + if (noeud != null && !nodesId.contains(noeud.getId())) { + error.addSevereError("validation.sousModeleContent.NoeudForCasierNotContained", casier.getNom(), noeud.getNom()); + } + } + + public void validSection(CatEMHSection section, + Set<String> branchesId, CtuluLog error) { + List<CatEMHBranche> branchesForSection = section.getBranches(); + for (CatEMHBranche catEMHBranche : branchesForSection) { + if (!branchesId.contains(catEMHBranche.getId())) { + error.addSevereError("validation.sousModeleContent.BrancheForSectionNotContained", section.getNom(), + catEMHBranche.getNom()); + } + } + } + + @Override + public void validate(Set<Object> childs, EMH emh, EMHModeleBase modeleBase) { + throw new UnsupportedOperationException("Not supported yet."); + } + + public void validateBranche(CatEMHBranche branche, + Set<String> nodesId, CtuluLog error) { + CatEMHNoeud noeudAmont = branche.getNoeudAmont(); + String noeudAmontId = noeudAmont.getId(); + if (!nodesId.contains(noeudAmontId)) { + error.addSevereError("validation.sousModeleContent.NoeudAmontNotContained", branche.getNom(), noeudAmont.getNom()); + } + CatEMHNoeud noeudAval = branche.getNoeudAval(); + String noeudAvalId = noeudAval.getId(); + if (!nodesId.contains(noeudAvalId)) { + error.addSevereError("validation.sousModeleContent.NoeudAvalNotContained", branche.getNom(), noeudAval.getNom()); + } + String sousModeleId = branche.getParent().getId(); + List<RelationEMHSectionDansBranche> sections = branche.getSections(); + for (RelationEMHSectionDansBranche relationEMHSectionDansBranche : sections) { + final CatEMHSection emh = relationEMHSectionDansBranche.getEmh(); + if (emh == null || emh.getParent() == null) { + System.err.println("aie"); + } + String sectionSousModeleId = emh.getParent().getId(); + if (!StringUtils.equals(sousModeleId, sectionSousModeleId)) { + error.addSevereError("validation.sousModeleContent.sectionNotContained", branche.getNom(), + relationEMHSectionDansBranche.getEmh().getNom()); + } + + } + } + + @Override + public List<CtuluLog> validateScenario(EMHScenario scenario) { + List<CtuluLog> res = new ArrayList<CtuluLog>(); + List<EMHSousModele> sousModeles = scenario.getSousModeles(); + for (EMHSousModele sousModele : sousModeles) { + CtuluLog log = validateSousModele(sousModele); + if (log != null) { + res.add(log); + } + } + return res; + } + + private CtuluLog validateSousModele(EMHSousModele sousModele) { + CtuluLog error = new CtuluLog(BusinessMessages.RESOURCE_BUNDLE); + error.setDesc("validation.sousModeleContent"); + error.setDescriptionArgs(sousModele.getNom()); + final List<CatEMHNoeud> noeuds = sousModele.getNoeuds(); + Set<String> nodesId = TransformerHelper.toSetOfId(noeuds); + List<CatEMHBranche> branches = sousModele.getBranches(); + for (CatEMHBranche branche : branches) { + validateBranche(branche, nodesId, error); + } + List<CatEMHCasier> casiers = sousModele.getCasiers(); + for (CatEMHCasier casier : casiers) { + validCasier(casier, nodesId, error); + } + List<CatEMHSection> sections = sousModele.getSections(); + Set<String> branchesId = TransformerHelper.toSetOfId(branches); + for (CatEMHSection section : sections) { + validSection(section, branchesId, error); + } + for (CatEMHNoeud noeud : noeuds) { + Set<String> parentIds = TransformerHelper.toSetOfId(noeud.getParents()); + List<CatEMHBranche> branchesOfNode = noeud.getBranches(); + for (CatEMHBranche branche : branchesOfNode) { + if (!parentIds.contains(branche.getParent().getId())) { + error.addSevereError("validation.sousModeleContent.BrancheForNodeNotContained", noeud.getNom(), branche.getNom()); + } + } + CatEMHCasier casier = noeud.getCasier(); + if (casier != null && !parentIds.contains(casier.getParent().getId())) { + error.addSevereError("validation.sousModeleContent.CasierForNodeNotContained", noeud.getNom(), casier.getNom()); + } + + + } + + if (error.isNotEmpty()) { + return error; + } + return null; + + } +} Modified: trunk/soft/fudaa-crue/crue-server/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties 2012-06-14 19:21:35 UTC (rev 7339) +++ trunk/soft/fudaa-crue/crue-server/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties 2012-06-14 21:12:15 UTC (rev 7340) @@ -334,6 +334,15 @@ validation.ord.NotNormal = L''ordonn\u00e9e du point {0} n''est pas normale. validation.ord.NotValid = L''ordonn\u00e9e du point {0} n''est pas valide. +validation.sousModeleContent=Validation contenu du contenu du sous-mod\u00e8le {0} +validation.sousModeleContent.NoeudAmontNotContained=Branche {0}: le noeud amont {1} n''appartient pas au sous-mod\u00e8le +validation.sousModeleContent.NoeudAvalNotContained=Branche {0}: le noeud aval {1} n''appartient pas au sous-mod\u00e8le +validation.sousModeleContent.sectionNotContained=Branche {0}: la section {1} n''appartient pas au sous-mod\u00e8le +validation.sousModeleContent.NoeudForCasierNotContained=Casier {0}: le noeud {1} n''appartient pas au sous-mod\u00e8le +validation.sousModeleContent.BrancheForSectionNotContained=Section {0}: la branche {1} n''appartient pas au sous-mod\u00e8le +validation.sousModeleContent.BrancheForNodeNotContained=Noeud {0}: la branche {1} n''appartient pas au(x) sous-mod\u00e9le(s) du noeud +validation.sousModeleContent.CasierForNodeNotContained=Noeud {0}: le casier {1} n''appartient pas au(x) sous-mod\u00e9le(s) du noeud + valide.relation = RelationEMH avec {0} valid.validationNumberOfData=Validation du nombre de donn\u00e9es valid.noLois=La liste de lois est vide. Modified: trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/io/ReadHelper.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/io/ReadHelper.java 2012-06-14 19:21:35 UTC (rev 7339) +++ trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/io/ReadHelper.java 2012-06-14 21:12:15 UTC (rev 7340) @@ -32,6 +32,18 @@ EMHRelationFactory.addRelationContientEMH(modele, ioData.getMetier().getSousModele()); } + public static EMHScenario readModeleAnsSetRelation(final CtuluLog analyzer, final String dcPath, final String dhPath) { + final CrueData res = readModele(analyzer, dcPath, dhPath).getMetier(); + res.getScenarioData().setNom("Sc_Test"); + res.getModele().setNom("Mo_Toto"); + res.getSousModele().setNom(CruePrefix.changePrefix(res.getModele().getNom(), CruePrefix.P_MODELE, CruePrefix.P_SS_MODELE)); + EMHScenario emhScenario = res.getScenarioData(); + EMHRelationFactory.addRelationContientEMH(emhScenario, res.getModele()); + EMHRelationFactory.addRelationContientEMH(res.getModele(), res.getSousModele()); + return emhScenario; + + } + public static CrueIOResu<CrueData> readModele(final CtuluLog analyzer, final String dcPath, final String dhPath) { final CrueData data = TestCrueDC.readModeleCrue9(analyzer, dcPath); final CrueIOResu<CrueData> read = Crue9FileFormatFactory.getDHFileFormat().read(dhPath, analyzer, data); Added: trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/validation/TestValidatorSousModeleContent.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/validation/TestValidatorSousModeleContent.java (rev 0) +++ trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/validation/TestValidatorSousModeleContent.java 2012-06-14 21:12:15 UTC (rev 7340) @@ -0,0 +1,55 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package org.fudaa.dodico.crue.validation; + +import java.util.Arrays; +import java.util.List; +import org.fudaa.ctulu.CtuluLog; +import org.fudaa.dodico.crue.io.ReadHelper; +import org.fudaa.dodico.crue.io.TestCrueDC; +import org.fudaa.dodico.crue.io.TestCrueDH; +import org.fudaa.dodico.crue.metier.emh.EMHScenario; +import org.fudaa.dodico.crue.metier.emh.EMHSectionIdem; +import org.fudaa.dodico.crue.metier.emh.EMHSousModele; +import org.fudaa.dodico.crue.metier.emh.RelationEMHSectionDansBranche; +import org.fudaa.dodico.crue.metier.factory.EMHRelationFactory; +import org.junit.Test; +import static org.junit.Assert.*; + +/** + * + * @author deniger ( genesis) + */ +public class TestValidatorSousModeleContent { + + public TestValidatorSousModeleContent() { + } + + @Test + public void testIsValid() { + EMHScenario scenario = ReadHelper.readModeleAnsSetRelation(new CtuluLog(), TestCrueDC.FICHIER_TEST_MODELE3_DC, + TestCrueDH.FICHIER_TEST_MODELE3_DH); + ValidatorSousModeleContent validator = new ValidatorSousModeleContent(); + List<CtuluLog> validateScenario = validator.validateScenario(scenario); + assertTrue(validateScenario.isEmpty()); + } + + @Test + public void testSectionOut() { + EMHScenario scenario = ReadHelper.readModeleAnsSetRelation(new CtuluLog(), TestCrueDC.FICHIER_TEST_MODELE3_DC, + TestCrueDH.FICHIER_TEST_MODELE3_DH); + EMHSectionIdem id = new EMHSectionIdem("test"); + EMHSousModele sousModele = new EMHSousModele(null); + RelationEMHSectionDansBranche relationSection = new RelationEMHSectionDansBranche(); + relationSection.setEmh(id); + EMHRelationFactory.addRelationContientEMH(sousModele, id); + scenario.getBranches().get(0).addListeSections(Arrays.asList(relationSection)); + ValidatorSousModeleContent validator = new ValidatorSousModeleContent(); + List<CtuluLog> validateScenario = validator.validateScenario(scenario); + assertEquals(1, validateScenario.size()); + assertEquals(1, validateScenario.get(0).getRecords().size()); + assertEquals("validation.sousModeleContent.sectionNotContained", validateScenario.get(0).getRecords().get(0).getMsg()); + } +} Modified: trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/ModellingTestHelper.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/ModellingTestHelper.java 2012-06-14 19:21:35 UTC (rev 7339) +++ trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/ModellingTestHelper.java 2012-06-14 21:12:15 UTC (rev 7340) @@ -6,16 +6,11 @@ import org.fudaa.dodico.crue.io.ReadHelper; import org.fudaa.dodico.crue.io.TestCrueDC; import org.fudaa.dodico.crue.io.TestCrueDH; -import org.fudaa.dodico.crue.io.common.CrueData; -import org.fudaa.dodico.crue.io.common.CrueIOResu; import org.fudaa.dodico.crue.metier.emh.EMHScenario; import org.fudaa.dodico.crue.metier.emh.EMHSousModele; import org.fudaa.dodico.crue.metier.emh.IdRegistry; import org.fudaa.dodico.crue.metier.etude.EMHProjet; -import org.fudaa.dodico.crue.metier.factory.CruePrefix; -import org.fudaa.dodico.crue.metier.factory.EMHRelationFactory; import org.fudaa.dodico.crue.projet.coeur.TestCoeurConfig; -import org.fudaa.fudaa.crue.common.services.ModellingScenarioService; import org.fudaa.fudaa.crue.modelling.services.ModellingScenarioServiceImpl; import org.openide.util.Lookup; @@ -28,15 +23,8 @@ public static EMHScenario readScenario() { ModellingScenarioServiceImpl modellingScenarioService = Lookup.getDefault().lookup(ModellingScenarioServiceImpl.class); - CrueIOResu<CrueData> readModele = ReadHelper.readModele(new CtuluLog(), TestCrueDC.FICHIER_TEST_MODELE3_DC, - TestCrueDH.FICHIER_TEST_MODELE3_DH); - final CrueData res = readModele.getMetier(); - res.getScenarioData().setNom("Sc_Test"); - res.getModele().setNom("Mo_Toto"); - res.getSousModele().setNom(CruePrefix.changePrefix(res.getModele().getNom(), CruePrefix.P_MODELE, CruePrefix.P_SS_MODELE)); - EMHScenario emhScenario = res.getScenarioData(); - EMHRelationFactory.addRelationContientEMH(emhScenario, res.getModele()); - EMHRelationFactory.addRelationContientEMH(res.getModele(), res.getSousModele()); + EMHScenario emhScenario = ReadHelper.readModeleAnsSetRelation(new CtuluLog(), TestCrueDC.FICHIER_TEST_MODELE3_DC, + TestCrueDH.FICHIER_TEST_MODELE3_DH); IdRegistry registry = new IdRegistry(); registry.registerAll(emhScenario); emhScenario.setIdRegistry(registry); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-06-18 06:30:36
|
Revision: 7346 http://fudaa.svn.sourceforge.net/fudaa/?rev=7346&view=rev Author: deniger Date: 2012-06-18 06:30:29 +0000 (Mon, 18 Jun 2012) Log Message: ----------- Added Paths: ----------- trunk/soft/fudaa-crue/crue-sysdoc/ trunk/soft/fudaa-crue/crue-sysdoc/pom.xml trunk/soft/fudaa-crue/crue-sysdoc/src/ trunk/soft/fudaa-crue/crue-sysdoc/src/main/ trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/ trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/ trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/ trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/ trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/ trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/ trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/DocEntry.java trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/ExtensionFileFilter.java trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/FileNameComparator.java trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/FolderProcessor.java trunk/soft/fudaa-crue/crue-sysdoc/src/test/ trunk/soft/fudaa-crue/crue-sysdoc/src/test/java/ trunk/soft/fudaa-crue/crue-sysdoc/src/test/java/org/ trunk/soft/fudaa-crue/crue-sysdoc/src/test/java/org/fudaa/ trunk/soft/fudaa-crue/crue-sysdoc/src/test/java/org/fudaa/dodico/ trunk/soft/fudaa-crue/crue-sysdoc/src/test/java/org/fudaa/dodico/crue/ trunk/soft/fudaa-crue/crue-sysdoc/src/test/java/org/fudaa/dodico/crue/sysdoc/ trunk/soft/fudaa-crue/crue-sysdoc/src/test/java/org/fudaa/dodico/crue/sysdoc/FolderProcessorTest.java Property changes on: trunk/soft/fudaa-crue/crue-sysdoc ___________________________________________________________________ Added: svn:ignore + target Copied: trunk/soft/fudaa-crue/crue-sysdoc/pom.xml (from rev 7339, trunk/soft/fudaa-crue/crue-server/pom.xml) =================================================================== --- trunk/soft/fudaa-crue/crue-sysdoc/pom.xml (rev 0) +++ trunk/soft/fudaa-crue/crue-sysdoc/pom.xml 2012-06-18 06:30:29 UTC (rev 7346) @@ -0,0 +1,89 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.fudaa.soft.fudaa-crue</groupId> + <artifactId>fudaa-crue</artifactId> + <version>0.54-SNAPSHOT</version> + </parent> + <artifactId>crue-sysdoc</artifactId> + <name>Crue Sysdoc</name> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <configuration> + <source>1.6</source> + <target>1.6</target> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-plugin</artifactId> + <configuration> + <parallel>methods</parallel> + <threadCount>5</threadCount> + </configuration> + </plugin> + </plugins> + + <pluginManagement> + <plugins> + <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.--> + <plugin> + <groupId>org.eclipse.m2e</groupId> + <artifactId>lifecycle-mapping</artifactId> + <version>1.0.0</version> + <configuration> + <lifecycleMappingMetadata> + <pluginExecutions> + <pluginExecution> + <pluginExecutionFilter> + <groupId> + org.apache.maven.plugins + </groupId> + <artifactId> + maven-antrun-plugin + </artifactId> + <versionRange> + [1.3,) + </versionRange> + <goals> + <goal>run</goal> + </goals> + </pluginExecutionFilter> + <action> + <ignore></ignore> + </action> + </pluginExecution> + </pluginExecutions> + </lifecycleMappingMetadata> + </configuration> + </plugin> + </plugins> + </pluginManagement> + </build> + <dependencies> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + </dependency> + <dependency> + <groupId>commons-collections</groupId> + <artifactId>commons-collections</artifactId> + </dependency> +<!-- <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + </dependency>--> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + </dependency> + <dependency> + <groupId>org.fudaa.framework.ctulu</groupId> + <artifactId>ctulu-common</artifactId> + </dependency> + </dependencies> +</project> Added: trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/DocEntry.java =================================================================== --- trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/DocEntry.java (rev 0) +++ trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/DocEntry.java 2012-06-18 06:30:29 UTC (rev 7346) @@ -0,0 +1,92 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package org.fudaa.dodico.crue.sysdoc; + +import java.io.File; +import java.util.*; +import org.apache.commons.lang.StringUtils; + +/** + * + * @author deniger + */ +public class DocEntry { + + private String path; + private String title; + private File file; + private List<DocEntry> children = new ArrayList<DocEntry>(); + + public String getPath() { + return path; + } + + public Map<File, DocEntry> getDocEntryByFile() { + Map<File, DocEntry> res = new HashMap<File, DocEntry>(); + getDocEntryByFile(res); + return res; + } + + private void getDocEntryByFile(Map<File, DocEntry> in) { + in.put(file, this); + for (DocEntry docEntry : children) { + docEntry.getDocEntryByFile(in); + } + } + + @Override + public String toString() { + return print(StringUtils.EMPTY); + } + + private String print(String prefix) { + StringBuilder builder = new StringBuilder(); + builder.append(prefix); + builder.append(title); + builder.append("\t;"); + builder.append(path); + builder.append("\t;"); + builder.append(file); + if (!isLeaf()) { + for (DocEntry docEntry : children) { + builder.append('\n'); + builder.append(docEntry.print(prefix + " ")); + } + } + return builder.toString(); + } + + public File getFile() { + return file; + } + + public void setFile(File file) { + this.file = file; + } + + public void setPath(String path) { + this.path = path; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public List<DocEntry> getChildren() { + return Collections.unmodifiableList(children); + } + + public boolean isLeaf() { + return children.isEmpty(); + } + + void addEntry(DocEntry fileEntry) { + children.add(fileEntry); + } +} Added: trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/ExtensionFileFilter.java =================================================================== --- trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/ExtensionFileFilter.java (rev 0) +++ trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/ExtensionFileFilter.java 2012-06-18 06:30:29 UTC (rev 7346) @@ -0,0 +1,29 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package org.fudaa.dodico.crue.sysdoc; + +import java.io.File; +import java.io.FileFilter; + +/** + * + * @author deniger + */ +class ExtensionFileFilter implements FileFilter { + private String extension; + + public ExtensionFileFilter(String extension) { + this.extension = extension; + } + + @Override + public boolean accept(File pathname) { + if (pathname.isDirectory()) { + return true; + } + return pathname.getName().endsWith(extension); + } + +} Added: trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/FileNameComparator.java =================================================================== --- trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/FileNameComparator.java (rev 0) +++ trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/FileNameComparator.java 2012-06-18 06:30:29 UTC (rev 7346) @@ -0,0 +1,20 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package org.fudaa.dodico.crue.sysdoc; + +import java.io.File; +import java.util.Comparator; + +/** + * + * @author deniger + */ +public class FileNameComparator implements Comparator<File> { + + @Override + public int compare(File o1, File o2) { + return o1.getName().compareTo(o2.getName()); + } +} Added: trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/FolderProcessor.java =================================================================== --- trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/FolderProcessor.java (rev 0) +++ trunk/soft/fudaa-crue/crue-sysdoc/src/main/java/org/fudaa/dodico/crue/sysdoc/FolderProcessor.java 2012-06-18 06:30:29 UTC (rev 7346) @@ -0,0 +1,58 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package org.fudaa.dodico.crue.sysdoc; + +import java.io.File; +import java.io.FileFilter; +import java.util.Arrays; +import java.util.Comparator; +import org.apache.commons.lang.StringUtils; + +/** + * + * @author deniger + */ +public class FolderProcessor { + + private String extension = ".html"; + private FileFilter extensionFileFilter; + private Comparator<File> fileComparator; + + DocEntry process(File dir) { + extensionFileFilter = new ExtensionFileFilter(extension); + fileComparator = new FileNameComparator(); + DocEntry res = new DocEntry(); + res.setFile(dir); + res.setTitle(dir.getName()); + res.setPath(StringUtils.EMPTY); + processFile(res); + + + + return res; + } + + private void processFile(DocEntry res) { + File[] listFiles = res.getFile().listFiles(extensionFileFilter); + Arrays.sort(listFiles, fileComparator); + String path = res.getPath(); + for (File file : listFiles) { + DocEntry fileEntry = new DocEntry(); + fileEntry.setFile(file); + fileEntry.setTitle(file.getName()); + if (file.isFile()) { + fileEntry.setPath(path + file.getName()); + } else { + fileEntry.setPath(path + file.getName() + "/"); + //on fait un parcours récursif + processFile(fileEntry); + } + //pour ne pas ajouter les folders vide + if (fileEntry.getFile().isFile() || !fileEntry.isLeaf()) { + res.addEntry(fileEntry); + } + } + } +} Added: trunk/soft/fudaa-crue/crue-sysdoc/src/test/java/org/fudaa/dodico/crue/sysdoc/FolderProcessorTest.java =================================================================== --- trunk/soft/fudaa-crue/crue-sysdoc/src/test/java/org/fudaa/dodico/crue/sysdoc/FolderProcessorTest.java (rev 0) +++ trunk/soft/fudaa-crue/crue-sysdoc/src/test/java/org/fudaa/dodico/crue/sysdoc/FolderProcessorTest.java 2012-06-18 06:30:29 UTC (rev 7346) @@ -0,0 +1,107 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package org.fudaa.dodico.crue.sysdoc; + +import java.io.File; +import java.io.IOException; +import java.util.List; +import org.fudaa.ctulu.CtuluLibFile; +import org.junit.*; +import static org.junit.Assert.*; + +/** + * + * @author deniger + */ +public class FolderProcessorTest { + + public FolderProcessorTest() { + } + + @BeforeClass + public static void setUpClass() throws Exception { + } + + @AfterClass + public static void tearDownClass() throws Exception { + } + + @Before + public void setUp() { + } + + @After + public void tearDown() { + } + + public static void main(String[] args) { + File dir = new File("/home/deniger/temp/sysdoc/"); + FolderProcessor instance = new FolderProcessor(); + DocEntry result = instance.process(dir); + System.err.println(result); + } + + /** + * Test of process method, of class FolderProcessor. + */ + @Test + public void testProcess() throws IOException { + File dir = CtuluLibFile.createTempDir(); + //on cree les fichier a,z dans le folder + File ahtml = new File(dir, "a.html"); + File zhtml = new File(dir, "z.html"); + ahtml.createNewFile(); + zhtml.createNewFile(); + //sera ignore a cause de l'extension + new File(dir, "toIgnore.htm").createNewFile(); + //le folder b + File subFolderB = new File(dir, "b"); + //contient un sous folder BB + File subFolderBB = new File(subFolderB, "bb"); + subFolderBB.mkdirs(); + //qui contient un fichier bbHtml + File bzHtml = new File(subFolderBB, "z.html"); + bzHtml.createNewFile(); + //le folder c + File subFolderC = new File(dir, "c"); + subFolderC.mkdirs(); + File cHtml = new File(subFolderC, "c.html"); + cHtml.createNewFile(); + cHtml.mkdirs(); + //empty folder + File subFolderD = new File(dir, "d"); + subFolderD.mkdirs(); + //a.html + //+b + //++bb + //+++z.html + //+c + //++c.html + //d ( vide sera ignore) + //z.html + + FolderProcessor processor = new FolderProcessor(); + DocEntry process = processor.process(dir); + assertNotNull(process); + assertEquals(dir, process.getFile()); + final List<DocEntry> children = process.getChildren(); + assertEquals(4, children.size()); + assertEquals(ahtml, children.get(0).getFile()); + assertEquals(ahtml.getName(), children.get(0).getPath()); + assertEquals(zhtml, children.get(3).getFile()); + assertEquals(zhtml.getName(), children.get(3).getPath()); + DocEntry bzEntry = process.getDocEntryByFile().get(bzHtml); + assertNotNull(bzEntry); + assertEquals(bzHtml.getName(), bzEntry.getTitle()); + assertEquals(zhtml.getName(), bzEntry.getPath()); + + + CtuluLibFile.deleteDir(dir); + + + + + } +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-06-19 15:32:39
|
Revision: 7357 http://fudaa.svn.sourceforge.net/fudaa/?rev=7357&view=rev Author: deniger Date: 2012-06-19 15:32:33 +0000 (Tue, 19 Jun 2012) Log Message: ----------- maj test Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidatorForCrue9Export.java trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationV1_1_1.java trunk/soft/fudaa-crue/crue-server/src/test/resources/integration/v1.1.1.zip trunk/soft/fudaa-crue/ui-branding/nb-configuration.xml trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/layer.xml trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/toolbar.xml trunk/soft/fudaa-crue/ui-modelling/nb-configuration.xml trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingSaveAction.java Added Paths: ----------- trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/action/save.png Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidatorForCrue9Export.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidatorForCrue9Export.java 2012-06-19 14:17:49 UTC (rev 7356) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidatorForCrue9Export.java 2012-06-19 15:32:33 UTC (rev 7357) @@ -401,13 +401,13 @@ } private void validateBranche6(CatEMHBranche emh) { - List<RelationEMHSectionDansBranche> sections = emh.getSections(); - for (RelationEMHSectionDansBranche relationSection : sections) { - CatEMHSection section = relationSection.getEmh(); - if (containsMoreThanOneLit(section)) { - addWarnOrError("crue9.compatible.branche6ContainsTooManyLit", emh.getNom(), section.getNom()); - } - } +// List<RelationEMHSectionDansBranche> sections = emh.getSections(); +// for (RelationEMHSectionDansBranche relationSection : sections) { +// CatEMHSection section = relationSection.getEmh(); +// if (containsMoreThanOneLit(section)) { +// addWarnOrError("crue9.compatible.branche6ContainsTooManyLit", emh.getNom(), section.getNom()); +// } +// } } Modified: trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationV1_1_1.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationV1_1_1.java 2012-06-19 14:17:49 UTC (rev 7356) +++ trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationV1_1_1.java 2012-06-19 15:32:33 UTC (rev 7357) @@ -78,9 +78,9 @@ bilans.put("Sc_Vierge_c10", sixInfos); bilans.put("Sc_Poub_c10", sixInfos); bilans.put("Sc_M3-0_c9c10", noMessage); - bilans.put("Sc_M3-0_c10", new ErrorBilanTester(0, 0, 2, 0)); + bilans.put("Sc_M3-0_c10", new ErrorBilanTester(0, 0, 0, 0)); bilans.put("Sc_M3-0_c10c9", noMessage); - bilans.put("Sc_M3-0_c10c10", new ErrorBilanTester(0, 0, 2, 0)); + bilans.put("Sc_M3-0_c10c10", new ErrorBilanTester(0, 0, 0, 0)); bilans.put("Sc_M3-0_v1c10", new ErrorBilanTester(0, 0, 5, 0));//inactive bilans.put("Sc_M3-0_v2c10", new ErrorBilanTester(0, 0, 3, 0));// un warning car CaclPseudoPerm non constant en // EMH,type @@ -88,23 +88,23 @@ bilans.put("Sc_M3-0_v4c10", noMessage); bilans.put("Sc_M3-0_v5c10", noMessage); bilans.put("Sc_M3-0_v6c10", noMessage); - bilans.put("Sc_M3-0_v7c10", new ErrorBilanTester(0, 0, 7, 0)); + bilans.put("Sc_M3-0_v7c10", new ErrorBilanTester(0, 0, 4, 0)); bilans.put("Sc_M3-0_v8c10", new ErrorBilanTester(0, 0, 1, 0)); bilans.put("Sc_M3-0_v9c10", noMessage); bilans.put("Sc_M3-0_v10c10", noMessage); // les scenarios avec erreurs: bilans.put("Sc_M3_e1c9", new ErrorBilanTester(1, 0, 1, 0)); bilans.put("Sc_M3_e2c9", new ErrorBilanTester(6, 0, 0, 0)); - bilans.put("Sc_M3-0_e1c9", new ErrorBilanTester(5, 0, 0, 0)); - bilans.put("Sc_M3-0_e2c9", new ErrorBilanTester(2, 0, 0, 0)); - bilans.put("Sc_M3-0_e3c9", new ErrorBilanTester(0, 8, 0, 0)); + bilans.put("Sc_M3-0_e1c9", new ErrorBilanTester(7, 0, 0, 0)); + bilans.put("Sc_M3-0_e2c9", new ErrorBilanTester(4, 0, 0, 0)); + bilans.put("Sc_M3-0_e3c9", new ErrorBilanTester(2, 8, 0, 0)); bilans.put("Sc_M3-0_e1c10", new ErrorBilanTester(1, 0, 0, 0)); bilans.put("Sc_M3-0_e2c10", new ErrorBilanTester(5, 0, 0, 0)); bilans.put("Sc_M3-0_e3c10", new ErrorBilanTester(4, 0, 1, 0)); bilans.put("Sc_M3-0_e4c10", new ErrorBilanTester(1, 0, 0, 0)); bilans.put("Sc_M3-0_e5c10", new ErrorBilanTester(1, 0, 0, 0)); bilans.put("Sc_M3-0_e6c10", new ErrorBilanTester(1, 0, 0, 0)); - bilans.put("Sc_M3-0_e7c10", new ErrorBilanTester(1, 0, 0, 0)); + bilans.put("Sc_M3-0_e7c10", new ErrorBilanTester(4, 0, 0, 0)); bilans.put("Sc_M3-0_e8c10", new ErrorBilanTester(10, 0, 0, 0)); bilans.put("Sc_M3-0_e9c10", new ErrorBilanTester(10, 0, 2, 0)); testAllScenario(bilans, projet); Modified: trunk/soft/fudaa-crue/crue-server/src/test/resources/integration/v1.1.1.zip =================================================================== (Binary files differ) Modified: trunk/soft/fudaa-crue/ui-branding/nb-configuration.xml =================================================================== --- trunk/soft/fudaa-crue/ui-branding/nb-configuration.xml 2012-06-19 14:17:49 UTC (rev 7356) +++ trunk/soft/fudaa-crue/ui-branding/nb-configuration.xml 2012-06-19 15:32:33 UTC (rev 7357) @@ -1,18 +1,18 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project-shared-configuration> +<?xml version="1.0" encoding="UTF-8"?> +<project-shared-configuration> <!-- This file contains additional configuration written by modules in the NetBeans IDE. The configuration is intended to be shared among all the users of project and therefore it is assumed to be part of version control checkout. Without this configuration present, some functionality in the IDE may be limited or fail altogether. ---> - <properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1"> +--> + <properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1"> <!-- Properties that influence various parts of the IDE, especially code formatting and the like. You can copy and paste the single properties, into the pom.xml file and the IDE will pick them up. That way multiple projects can share the same settings (useful for formatting rules for example). Any value defined here will override the pom.xml file value but is only applicable to the current project. ---> - <netbeans.hint.jdkPlatform>JDK_1.6</netbeans.hint.jdkPlatform> - </properties> -</project-shared-configuration> +--> + <netbeans.hint.jdkPlatform>JDK_1.6</netbeans.hint.jdkPlatform> + </properties> +</project-shared-configuration> Modified: trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/layer.xml =================================================================== --- trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/layer.xml 2012-06-19 14:17:49 UTC (rev 7356) +++ trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/layer.xml 2012-06-19 15:32:33 UTC (rev 7357) @@ -68,7 +68,8 @@ </folder> <folder name="Toolbars"> <file name="Standard.xml_hidden"/> - <file name="toolbar.xml" url="toolbar.xml"> + <file name="UndoRedo_hidden"/> + <file name="toolbar.xml" url="toolbar.xml"> <attr intvalue="1" name="position"/> </file> <file name="Clipboard_hidden"/> Modified: trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/toolbar.xml =================================================================== --- trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/toolbar.xml 2012-06-19 14:17:49 UTC (rev 7356) +++ trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/toolbar.xml 2012-06-19 15:32:33 UTC (rev 7357) @@ -3,7 +3,7 @@ "http://www.netbeans.org/dtds/toolbar1_1.dtd"> <Configuration> <Row> - <Toolbar name="UndoRedo" visible="true" draggable="false" align="left" position="1"/> + <Toolbar name="SaveModelling" visible="false" draggable="false" align="left" position="1"/> <Toolbar name="Perspective" visible="true" draggable="false" align="left" position="2"/> <Toolbar name="State" visible="true" draggable="false" align="left" position="3"/> </Row> Modified: trunk/soft/fudaa-crue/ui-modelling/nb-configuration.xml =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/nb-configuration.xml 2012-06-19 14:17:49 UTC (rev 7356) +++ trunk/soft/fudaa-crue/ui-modelling/nb-configuration.xml 2012-06-19 15:32:33 UTC (rev 7357) @@ -1,18 +1,18 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project-shared-configuration> +<?xml version="1.0" encoding="UTF-8"?> +<project-shared-configuration> <!-- This file contains additional configuration written by modules in the NetBeans IDE. The configuration is intended to be shared among all the users of project and therefore it is assumed to be part of version control checkout. Without this configuration present, some functionality in the IDE may be limited or fail altogether. ---> - <properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1"> +--> + <properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1"> <!-- Properties that influence various parts of the IDE, especially code formatting and the like. You can copy and paste the single properties, into the pom.xml file and the IDE will pick them up. That way multiple projects can share the same settings (useful for formatting rules for example). Any value defined here will override the pom.xml file value but is only applicable to the current project. ---> - <netbeans.hint.jdkPlatform>JDK_1.6</netbeans.hint.jdkPlatform> - </properties> -</project-shared-configuration> +--> + <netbeans.hint.jdkPlatform>JDK_1.6</netbeans.hint.jdkPlatform> + </properties> +</project-shared-configuration> Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingSaveAction.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingSaveAction.java 2012-06-19 14:17:49 UTC (rev 7356) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingSaveAction.java 2012-06-19 15:32:33 UTC (rev 7357) @@ -7,20 +7,21 @@ import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import javax.swing.Action; +import org.fudaa.fudaa.crue.common.PerspectiveEnum; import org.fudaa.fudaa.crue.common.helper.DialogHelper; +import org.fudaa.fudaa.crue.common.services.SelectedPerspectiveService; import org.fudaa.fudaa.crue.modelling.perspective.PerspectiveServiceModelling; import org.fudaa.fudaa.crue.modelling.services.ModellingScenarioModificationService; -import org.openide.awt.ActionRegistration; -import org.openide.awt.ActionReference; -import org.openide.awt.ActionReferences; -import org.openide.awt.ActionID; +import org.openide.awt.*; import org.openide.util.Lookup; +import org.openide.util.Lookup.Result; import org.openide.util.NbBundle; @ActionID(category = "View", - id = "org.fudaa.fudaa.crue.modelling.ModellingSaveAction") -@ActionRegistration(displayName = "#CTL_ModellingSaveAction") +id = "org.fudaa.fudaa.crue.modelling.ModellingSaveAction") +@ActionRegistration(displayName = "#CTL_ModellingSaveAction", iconBase = "org/fudaa/fudaa/crue/modelling/action/save.png") @ActionReferences({ + @ActionReference(path = "Toolbars/SaveModelling", position = 1), @ActionReference(path = "Menu/Modelling", position = 1) }) public final class ModellingSaveAction extends AbstractModellingAction implements PropertyChangeListener { @@ -36,10 +37,17 @@ @Override protected boolean getEnableState() { - return super.getEnableState() && modellingScenarioModificationService!=null && modellingScenarioModificationService.isModified(); + return super.getEnableState() && modellingScenarioModificationService != null && modellingScenarioModificationService.isModified(); } @Override + protected void updateEnableState() { + super.updateEnableState(); + Toolbar toolbar = ToolbarPool.getDefault().findToolbar("SaveModelling"); + toolbar.getParent().setVisible(isMyPerspectiveActivated()); + } + + @Override public void propertyChange(PropertyChangeEvent evt) { updateEnableState(); } @@ -53,7 +61,7 @@ public void doAction() { if (scenarioService.saveScenario()) { DialogHelper.showNotifyOperationTermine(NbBundle.getMessage(ModellingSaveAction.class, "ModellingSaveAction.SucceedMessage", - scenarioService.getManagerScenarioLoaded().getNom())); + scenarioService.getManagerScenarioLoaded().getNom())); PerspectiveServiceModelling perpective = Lookup.getDefault().lookup(PerspectiveServiceModelling.class); perpective.setDirty(false); Copied: trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/action/save.png (from rev 7339, trunk/framework/ctulu-bu/src/main/resources/com/memoire/bu/crystal_enregistrer.png) =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-06-21 20:36:52
|
Revision: 7375 http://fudaa.svn.sourceforge.net/fudaa/?rev=7375&view=rev Author: deniger Date: 2012-06-21 20:36:45 +0000 (Thu, 21 Jun 2012) Log Message: ----------- Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtGeoProfilCasier.java trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/EnumInfosEMH.java trunk/soft/fudaa-crue/ui-branding/src/main/java/org/fudaa/fudaa/crue/branding/InitGeneralUIInstaller.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGISEditionAction.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/PlanimetryControllerHelper.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheLayer.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryCasierLayer.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryCasierLayerModel.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryNodeLayerModel.java 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/action/Bundle.properties trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/PlanimetryLauncher.java Added Paths: ----------- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AbstractAddAction.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddCasierAction.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/EditZone.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/EditZonePanel.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/CreationEMHSelectedType.java trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/layer/ trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/layer/Bundle.properties Removed Paths: ------------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/DonGeoLoc.java Deleted: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/DonGeoLoc.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/DonGeoLoc.java 2012-06-21 20:34:50 UTC (rev 7374) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/DonGeoLoc.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -1,11 +0,0 @@ -package org.fudaa.dodico.crue.metier.emh; - -/** @pdOid 82676b69-f9b3-4219-965c-808ea63702b0 */ -public class DonGeoLoc extends AbstractInfosEMH { - /** @pdOid 7cda1db7-9642-44f1-899f-f66719adb97e */ - @Override - public final EnumInfosEMH getCatType() { - return EnumInfosEMH.DON_GEO_LOC; - } - -} \ No newline at end of file Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtGeoProfilCasier.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtGeoProfilCasier.java 2012-06-21 20:34:50 UTC (rev 7374) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtGeoProfilCasier.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -5,24 +5,27 @@ import org.fudaa.dodico.crue.metier.annotation.UsedByComparison; import org.fudaa.dodico.crue.metier.annotation.Visibility; -/** @pdOid 644b4cd5-433b-4568-b043-3fefd4bca488 */ +/** + * @pdOid 644b4cd5-433b-4568-b043-3fefd4bca488 + */ public class DonPrtGeoProfilCasier extends DonPrtGeoNomme { - /** @pdOid ca711117-4b5e-4b0c-a66d-6b9174f265bb */ + /** + * @pdOid ca711117-4b5e-4b0c-a66d-6b9174f265bb + */ private double longueur; public DonPrtGeoProfilCasier(CrueConfigMetier def) { longueur = def.getDefaultDoubleValue("longueur"); } - /** - * @pdRoleInfo migr=no name=PtProfil assc=association37 coll=java.util.List impl=java.util.ArrayList mult=1..* - * type=Composition + * @pdRoleInfo migr=no name=PtProfil assc=association37 coll=java.util.List impl=java.util.ArrayList mult=1..* type=Composition */ private java.util.List<PtProfil> ptProfil; - /** @pdRoleInfo migr=no name=LitUtile assc=association45 mult=1..1 type=Composition */ + /** + * @pdRoleInfo migr=no name=LitUtile assc=association45 mult=1..1 type=Composition + */ private LitUtile litUtile; - private String commentaire = StringUtils.EMPTY; public String getCommentaire() { @@ -33,28 +36,22 @@ this.commentaire = StringUtils.defaultString(commentaire); } - /** @pdGenerated default getter */ + /** + * @pdGenerated default getter + */ public java.util.List<PtProfil> getPtProfil() { if (ptProfil == null) { ptProfil = new java.util.ArrayList<PtProfil>(); } return ptProfil; } - + @UsedByComparison - @Visibility(ihm=false) - public int getPtProfilSize(){ - return ptProfil==null?0:ptProfil.size(); + @Visibility(ihm = false) + public int getPtProfilSize() { + return ptProfil == null ? 0 : ptProfil.size(); } - /** @pdGenerated default iterator getter */ - public java.util.Iterator getIteratorPtProfil() { - if (ptProfil == null) { - ptProfil = new java.util.ArrayList<PtProfil>(); - } - return ptProfil.iterator(); - } - /** * @pdGenerated default setter * @param newPtProfil @@ -71,7 +68,9 @@ * @param newPtProfil */ public void addPtProfil(final PtProfil newPtProfil) { - if (newPtProfil == null) { return; } + if (newPtProfil == null) { + return; + } if (this.ptProfil == null) { this.ptProfil = new java.util.ArrayList<PtProfil>(); } @@ -85,7 +84,9 @@ * @param oldPtProfil */ public void removePtProfil(final PtProfil oldPtProfil) { - if (oldPtProfil == null) { return; } + if (oldPtProfil == null) { + return; + } if (this.ptProfil != null) { if (this.ptProfil.contains(oldPtProfil)) { this.ptProfil.remove(oldPtProfil); @@ -93,14 +94,18 @@ } } - /** @pdGenerated default removeAll */ + /** + * @pdGenerated default removeAll + */ public void removeAllPtProfil() { if (ptProfil != null) { ptProfil.clear(); } } - /** @pdGenerated default parent getter */ + /** + * @pdGenerated default parent getter + */ public LitUtile getLitUtile() { return litUtile; } @@ -113,17 +118,17 @@ this.litUtile = newLitUtile; } - /** @pdOid cd852adc-d66e-471f-8535-f114020deb06 */ + /** + * @pdOid cd852adc-d66e-471f-8535-f114020deb06 + */ public double getLongueur() { return longueur; } /** - * @param newLongueur - * @pdOid 65b749d9-88ed-4718-8189-0d7f9471643c + * @param newLongueur @pdOid 65b749d9-88ed-4718-8189-0d7f9471643c */ public void setLongueur(final double newLongueur) { longueur = newLongueur; } - } \ No newline at end of file Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/EnumInfosEMH.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/EnumInfosEMH.java 2012-06-21 20:34:50 UTC (rev 7374) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/EnumInfosEMH.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -12,5 +12,5 @@ */ public enum EnumInfosEMH { - DON_CLIM, DON_CALC_SANS_PRT, DON_GEO_LOC, DON_PRT_CINI, ORD_CALC_SCENARIO, ORD_PRT_CINI_MODELE_BASE, ORD_RES_SCENARIO, PARAM_NUM_MODELE_BASE, RES_PRT_CINIT, RES_PRT_RESEAU, DON_PRT_GEO, RES_PRT_GEO, PARAM_CALC_SCENARIO, DON_FRT_CONTENEUR, DON_CLIM_SCENARIO, DON_LOI_CONTENEUR_SCENARIO, ORD_PRT_GEO_MODELE_BASE, ORD_PRT_RESEAU, RESULTAT, RESULTAT_PAS_DE_TEMPS, LOGS, AVANCEMENT; + DON_CLIM, DON_CALC_SANS_PRT, DON_PRT_CINI, ORD_CALC_SCENARIO, ORD_PRT_CINI_MODELE_BASE, ORD_RES_SCENARIO, PARAM_NUM_MODELE_BASE, RES_PRT_CINIT, RES_PRT_RESEAU, DON_PRT_GEO, RES_PRT_GEO, PARAM_CALC_SCENARIO, DON_FRT_CONTENEUR, DON_CLIM_SCENARIO, DON_LOI_CONTENEUR_SCENARIO, ORD_PRT_GEO_MODELE_BASE, ORD_PRT_RESEAU, RESULTAT, RESULTAT_PAS_DE_TEMPS, LOGS, AVANCEMENT; } \ No newline at end of file Modified: trunk/soft/fudaa-crue/ui-branding/src/main/java/org/fudaa/fudaa/crue/branding/InitGeneralUIInstaller.java =================================================================== --- trunk/soft/fudaa-crue/ui-branding/src/main/java/org/fudaa/fudaa/crue/branding/InitGeneralUIInstaller.java 2012-06-21 20:34:50 UTC (rev 7374) +++ trunk/soft/fudaa-crue/ui-branding/src/main/java/org/fudaa/fudaa/crue/branding/InitGeneralUIInstaller.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -87,6 +87,7 @@ @Override public void restored() { + System.setProperty("fulog.level", "nothing"); WindowManager.getDefault().invokeWhenUIReady(this); // UIManager.put("EditorTabDisplayerUI", "org.fudaa.fudaa.crue.branding.NoTabsTabDisplayerUI"); Lookup.Template<ModuleInfo> template = new Lookup.Template<ModuleInfo>(ModuleInfo.class, Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGISEditionAction.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGISEditionAction.java 2012-06-21 20:34:50 UTC (rev 7374) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryGISEditionAction.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -18,6 +18,10 @@ super(_m, _editor, _scene); } + PlanimetryGisPaletteEdition getPalette() { + return (PlanimetryGisPaletteEdition) super.palette_; + } + @Override protected BPalettePanelInterface buildPaletteContent() { final PlanimetryGisPaletteEdition bPaletteEdition = new PlanimetryGisPaletteEdition(super.getScene()); 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 2012-06-21 20:34:50 UTC (rev 7374) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryVisuPanel.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -18,6 +18,7 @@ import javax.swing.Action; import javax.swing.JComponent; import javax.swing.JMenu; +import javax.swing.JSeparator; import javax.swing.KeyStroke; import org.fudaa.ctulu.CtuluLib; import org.fudaa.fudaa.crue.planimetry.listener.PlanimetryVisuUpdater; @@ -32,7 +33,10 @@ import org.fudaa.ebli.calque.ZSelectionListener; import org.fudaa.ebli.commun.EbliActionInterface; import org.fudaa.ebli.commun.EbliActionMap; +import org.fudaa.ebli.commun.EbliComponentFactory; import org.fudaa.ebli.commun.EbliLib; +import org.fudaa.fudaa.crue.planimetry.action.AddCasierAction; +import org.fudaa.fudaa.crue.planimetry.action.EditZonePanel; import org.fudaa.fudaa.sig.layer.FSigEditor; import org.fudaa.fudaa.sig.layer.FSigLayerGroup; import org.fudaa.fudaa.sig.layer.FSigVisuPanel; @@ -202,7 +206,12 @@ return planimetryCalqueContext.getGroupExternController().getGroupExtern(); } boolean gisAlreadyCreation; + EditZonePanel editZonePanel; + public EditZonePanel getEditZonePanel() { + return editZonePanel; + } + public JComponent createGisEditionPalette() { assert gisAlreadyCreation == false; gisAlreadyCreation = true; @@ -211,6 +220,12 @@ action.setUsedAsTab(true); final JComponent content = action.buildContentPane(); action.updateBeforeShow(); + editZonePanel = new EditZonePanel(); + PlanimetryGisPaletteEdition palette = action.getPalette(); + AddCasierAction addCasier = new AddCasierAction(palette,planimetryCalqueContext, editZonePanel); + getPlanimetryVisuController().addEditAction(addCasier); + content.add(new JSeparator()); + content.add(add(addCasier.buildToolButton(EbliComponentFactory.INSTANCE))); return content; } Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AbstractAddAction.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AbstractAddAction.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AbstractAddAction.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -0,0 +1,94 @@ +package org.fudaa.fudaa.crue.planimetry.action; + +import java.beans.PropertyChangeEvent; +import java.beans.PropertyChangeListener; +import javax.swing.Icon; +import javax.swing.JComponent; +import javax.swing.event.TreeSelectionEvent; +import javax.swing.event.TreeSelectionListener; +import org.fudaa.ebli.calque.ZCalqueAffichageDonnees; +import org.fudaa.ebli.calque.edition.ZCalqueEditionInteraction; +import org.fudaa.ebli.commun.EbliActionChangeState; +import org.fudaa.fudaa.crue.planimetry.PlanimetryGisPaletteEdition; +import org.fudaa.fudaa.crue.planimetry.controller.PlanimetryController; + +/** + * + * @author deniger ( genesis) + */ +public abstract class AbstractAddAction extends EbliActionChangeState implements TreeSelectionListener, PropertyChangeListener { + + PlanimetryController controller; + EditZone zone; + PlanimetryGisPaletteEdition palette; + + public AbstractAddAction(PlanimetryGisPaletteEdition palette, PlanimetryController controller, EditZone zone, String name, + Icon ic, String cmd) { + super(name, ic, cmd); + this.controller = controller; + this.palette = palette; + this.zone = zone; + setEnabled(false); + controller.getVisuPanel().getArbreCalqueModel().addTreeSelectionListener(this); + controller.getVisuPanel().getEditor().getCalqueDessin().addPropertyChangeListener("gele", this); + } + + public abstract String getDefaultPaletteAction(); + + public boolean isSelectedLayerOk() { + return controller.getVisuPanel().getArbreCalqueModel().getSelectedCalque() == getLayer(); + } + + @Override + public void propertyChange(PropertyChangeEvent evt) { + if (isUpdating || controller.getVisuPanel().getEditor().isStateChanging()) { + return; + } + final boolean gele = getCalqueDessin().isGele(); + final boolean selected = isSelected(); + if (selected && gele) { + changeAll(); + } + if (!selected && !gele && isSelectedLayerOk()) { + changeAll(); + } + } + + public ZCalqueEditionInteraction getCalqueDessin() { + return controller.getVisuPanel().getEditor().getCalqueDessin(); + } + + @Override + public void valueChanged(TreeSelectionEvent e) { + if (isUpdating) { + return; + } + if (isSelected() && !isSelectedLayerOk()) { + changeAll(); + } + } + + protected abstract ZCalqueAffichageDonnees getLayer(); + + protected abstract JComponent getEditionComponent(); + boolean isUpdating = false; + + @Override + public void changeAction() { + isUpdating = true; + if (isSelected()) { + if (!isSelectedLayerOk()) { + controller.getVisuPanel().getArbreCalqueModel().setSelectionCalque(getLayer()); + } + zone.active(controller.getHelper().getCreationEMH().getCasierComboBox()); + if (getCalqueDessin().isGele()) { + getCalqueDessin().setGele(false); + palette.setButtonSelected(getDefaultPaletteAction()); + } + } else { + zone.unactive(controller.getHelper().getCreationEMH().getCasierComboBox()); + controller.getVisuPanel().setCalqueSelectionActif(); + } + isUpdating = false; + } +} Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddCasierAction.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddCasierAction.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddCasierAction.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -0,0 +1,45 @@ +package org.fudaa.fudaa.crue.planimetry.action; + +import java.awt.Color; +import javax.swing.Icon; +import javax.swing.JComponent; +import org.fudaa.ebli.calque.ZCalqueAffichageDonnees; +import org.fudaa.ebli.calque.edition.BPaletteEdition; +import org.fudaa.ebli.trace.TraceIcon; +import org.fudaa.ebli.trace.TraceIconModel; +import org.fudaa.fudaa.crue.planimetry.PlanimetryGisPaletteEdition; +import org.fudaa.fudaa.crue.planimetry.controller.PlanimetryController; +import org.openide.util.NbBundle; + +/** + * + * @author deniger ( genesis) + */ +public class AddCasierAction extends AbstractAddAction { + + private static Icon createIcon() { + TraceIconModel model = new TraceIconModel(TraceIcon.CARRE, 10, Color.BLACK); + model.setBackgroundColor(Color.ORANGE.darker()); + model.setBackgroundColorPainted(true); + return new TraceIcon(model); + } + + public AddCasierAction(PlanimetryGisPaletteEdition palette, PlanimetryController controller, EditZone zone) { + super(palette, controller, zone, NbBundle.getMessage(AddCasierAction.class, "AddCasierAction.Name"), createIcon(), + "ADD_CASIER"); + } + + public String getDefaultPaletteAction() { + return BPaletteEdition.ADD_RECTANGLE_ACTION; + } + + @Override + protected JComponent getEditionComponent() { + return controller.getHelper().getCreationEMH().getCasierComboBox(); + } + + @Override + protected ZCalqueAffichageDonnees getLayer() { + return controller.getCasierController().getLayer(); + } +} Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/EditZone.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/EditZone.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/EditZone.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -0,0 +1,14 @@ +package org.fudaa.fudaa.crue.planimetry.action; + +import javax.swing.JComponent; + +/** + * + * @author deniger ( genesis) + */ +public interface EditZone { + + void active(JComponent jc); + void unactive(JComponent jc); + +} Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/EditZonePanel.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/EditZonePanel.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/EditZonePanel.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -0,0 +1,40 @@ +package org.fudaa.fudaa.crue.planimetry.action; + +import java.awt.Component; +import java.awt.FlowLayout; +import javax.swing.JComponent; +import javax.swing.JPanel; +import org.fudaa.ctulu.CtuluLibArray; + +/** + * + * @author deniger ( genesis) + */ +public class EditZonePanel implements EditZone { + + JPanel panel = new JPanel(new FlowLayout(FlowLayout.LEFT)); + + public JPanel getPanel() { + return panel; + } + + @Override + public void active(JComponent jc) { + Component[] components = panel.getComponents(); + if (CtuluLibArray.containsObject(components, jc)) { + return; + } + panel.add(jc); + panel.revalidate(); + } + + @Override + public void unactive(JComponent jc) { + Component[] components = panel.getComponents(); + if (!CtuluLibArray.containsObject(components, jc)) { + return; + } + panel.remove(jc); + panel.revalidate(); + } +} Added: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/CreationEMHSelectedType.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/CreationEMHSelectedType.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/CreationEMHSelectedType.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -0,0 +1,90 @@ +package org.fudaa.fudaa.crue.planimetry.controller; + +import java.awt.event.ItemEvent; +import java.awt.event.ItemListener; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import javax.swing.JComboBox; +import org.apache.commons.lang.StringUtils; +import org.fudaa.ctulu.gui.CtuluCellTextRenderer; +import org.fudaa.dodico.crue.metier.emh.EnumBrancheType; +import org.fudaa.dodico.crue.metier.emh.EnumCasierType; +import org.fudaa.dodico.crue.metier.transformer.ToStringInternationalizable; + +/** + * + * @author deniger ( genesis) + */ +public class CreationEMHSelectedType { + + EnumCasierType casierType = EnumCasierType.EMHCasierProfil; + EnumBrancheType brancheType = EnumBrancheType.EMHBrancheSaintVenant; + + public EnumBrancheType getBrancheType() { + return brancheType; + } + + public void setBrancheType(EnumBrancheType brancheType) { + this.brancheType = brancheType; + } + + public EnumCasierType getCasierType() { + return casierType; + } + + public void setCasierType(EnumCasierType casierType) { + this.casierType = casierType; + } + JComboBox cbCasier; + JComboBox cbBranche; + + public JComboBox getCasierComboBox() { + if (cbCasier == null) { +// cbCasier = new JComboBox(EnumCasierType.values()); + cbCasier = new JComboBox(new Object[]{EnumCasierType.EMHCasierProfil}); + cbCasier.setRenderer(renderer); + cbCasier.setSelectedItem(casierType); + cbCasier.addItemListener(new ItemListener() { + + @Override + public void itemStateChanged(ItemEvent e) { + setCasierType((EnumCasierType) cbCasier.getSelectedItem()); + } + }); + } + return cbCasier; + } + + public JComboBox createBrancheComboBox() { + if (cbBranche == null) { +// List<EnumBrancheType> values = new ArrayList<EnumBrancheType>(Arrays.asList(EnumBrancheType.values())); + cbBranche = new JComboBox(EnumBrancheType.values()); + cbBranche.setRenderer(renderer); + cbBranche.setSelectedItem(brancheType); + cbBranche.addItemListener(new ItemListener() { + + @Override + public void itemStateChanged(ItemEvent e) { + setBrancheType((EnumBrancheType) cbBranche.getSelectedItem()); + } + }); + } + return cbCasier; + } + private CtuluCellTextRenderer renderer = new CtuluCellTextRenderer() { + + @Override + protected void setValue(Object _value) { + if (_value == null) { + super.setValue(StringUtils.EMPTY); + } else { + super.setValue(((ToStringInternationalizable) _value).geti18n()); + } + } + }; + + public CtuluCellTextRenderer getRenderer() { + return renderer; + } +} Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/PlanimetryControllerHelper.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/PlanimetryControllerHelper.java 2012-06-21 20:34:50 UTC (rev 7374) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/PlanimetryControllerHelper.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -22,7 +22,12 @@ public class PlanimetryControllerHelper { private final PlanimetryController controller; + private CreationEMHSelectedType creationEMH = new CreationEMHSelectedType(); + public CreationEMHSelectedType getCreationEMH() { + return creationEMH; + } + public PlanimetryControllerHelper(PlanimetryController context) { this.controller = context; } Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheLayer.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheLayer.java 2012-06-21 20:34:50 UTC (rev 7374) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheLayer.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -7,7 +7,6 @@ import org.fudaa.ctulu.gis.GISPolyligne; import org.fudaa.ctulu.gis.GisAbscCurviligneToCoordinate; import org.fudaa.dodico.crue.metier.emh.CatEMHBranche; -import org.fudaa.dodico.crue.metier.emh.EMH; import org.fudaa.ebli.calque.dessin.DeForme; import org.fudaa.ebli.geometrie.GrBoite; import org.fudaa.ebli.geometrie.GrMorphisme; Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryCasierLayer.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryCasierLayer.java 2012-06-21 20:34:50 UTC (rev 7374) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryCasierLayer.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -8,7 +8,6 @@ import org.fudaa.ctulu.gis.GISCoordinateSequenceContainerInterface; import org.fudaa.ctulu.gis.GISPolygone; import org.fudaa.dodico.crue.metier.emh.CatEMHCasier; -import org.fudaa.dodico.crue.metier.emh.EMH; import org.fudaa.ebli.calque.dessin.DeForme; import org.fudaa.ebli.geometrie.GrBoite; import org.fudaa.ebli.geometrie.GrMorphisme; @@ -95,7 +94,8 @@ @Override public boolean canAddForme(int _typeForme) { - return isEditable() && (_typeForme == DeForme.CARRE || _typeForme == DeForme.CERCLE || _typeForme == DeForme.COURBE_FERMEE); + final boolean ok = _typeForme == DeForme.RECTANGLE || _typeForme == DeForme.ELLIPSE || _typeForme == DeForme.POLYGONE; + return ok && isEditable(); } public static Coordinate getCenter(GISCoordinateSequenceContainerInterface pts) { Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryCasierLayerModel.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryCasierLayerModel.java 2012-06-21 20:34:50 UTC (rev 7374) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryCasierLayerModel.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -1,7 +1,18 @@ package org.fudaa.fudaa.crue.planimetry.layer; +import com.vividsolutions.jts.geom.Geometry; +import org.fudaa.ctulu.CtuluCommandContainer; +import org.fudaa.ctulu.CtuluUI; import org.fudaa.ctulu.gis.GISZoneCollectionLigneBrisee; +import org.fudaa.dodico.crue.metier.emh.EMHSousModele; +import org.fudaa.dodico.crue.metier.emh.EnumCasierType; +import org.fudaa.ebli.calque.edition.ZEditionAttributesDataI; +import org.fudaa.ebli.geometrie.GrPolygone; +import org.fudaa.ebli.geometrie.GrPolyligne; +import org.fudaa.fudaa.crue.common.helper.DialogHelper; import org.fudaa.fudaa.crue.planimetry.controller.LayerCasierController; +import org.fudaa.fudaa.crue.planimetry.controller.PlanimetryControllerHelper; +import org.openide.util.NbBundle; /** * @author deniger ( genesis) @@ -19,4 +30,35 @@ public boolean isGeometryReliee(int _idxGeom) { return true; } + + @Override + public boolean addGeometry(Geometry _p, CtuluCommandContainer _cmd, CtuluUI _ui, ZEditionAttributesDataI _d) { + return false; + } + + @Override + public boolean addGeometry(GrPolygone _p, CtuluCommandContainer _cmd, CtuluUI _ui, ZEditionAttributesDataI _d) { + PlanimetryControllerHelper helper = super.getLayerController().getHelper(); + EMHSousModele sousModele = helper.getDefaultSousModele(); + if (sousModele == null) { + return false; + } + if (!helper.isVisible(sousModele)) { + DialogHelper.showWarn(NbBundle.getMessage(PlanimetryNodeLayerModel.class, "AddEMH.SousModeleParDefautNotVisible")); + return false; + } + EnumCasierType casierType = helper.getCreationEMH().getCasierType(); + if (casierType == null) { + return false; + } + getLayerController().changeWillBeDone(); +// return super.addGeometry(_p, _cmd, _ui, _d); + getLayerController().changeDone(); + return true; + } + + @Override + public boolean addGeometry(GrPolyligne _p, CtuluCommandContainer _cmd, CtuluUI _ui, ZEditionAttributesDataI _d) { + return false; + } } Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryNodeLayerModel.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryNodeLayerModel.java 2012-06-21 20:34:50 UTC (rev 7374) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryNodeLayerModel.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -5,19 +5,16 @@ import org.fudaa.ctulu.gis.GISPoint; import org.fudaa.ctulu.gis.GISZoneCollectionPoint; import org.fudaa.dodico.crue.edition.EditionCreateEMH; -import org.fudaa.dodico.crue.edition.UniqueNomFinder; import org.fudaa.dodico.crue.metier.emh.CatEMHNoeud; -import org.fudaa.dodico.crue.metier.emh.EMHNoeudNiveauContinu; -import org.fudaa.dodico.crue.metier.emh.EMHScenario; import org.fudaa.dodico.crue.metier.emh.EMHSousModele; -import org.fudaa.dodico.crue.metier.emh.EnumCatEMH; import org.fudaa.dodico.crue.metier.emh.EnumNoeudType; -import org.fudaa.dodico.crue.metier.factory.EMHRelationFactory; import org.fudaa.ebli.calque.edition.ZEditionAttributesDataI; import org.fudaa.ebli.geometrie.GrPoint; +import org.fudaa.fudaa.crue.common.helper.DialogHelper; import org.fudaa.fudaa.crue.planimetry.controller.LayerNodeController; import org.fudaa.fudaa.crue.planimetry.controller.PlanimetryControllerHelper; import org.fudaa.fudaa.crue.planimetry.controller.PlanimetryGisModelContainer; +import org.openide.util.NbBundle; /** * @@ -31,14 +28,21 @@ @Override public void addPoint(GrPoint _p, ZEditionAttributesDataI _data, CtuluCommandContainer _cmd) { + PlanimetryControllerHelper helper = super.getLayerController().getHelper(); + EMHSousModele sousModele = helper.getDefaultSousModele(); + if (sousModele == null) { + return; + } + if (!helper.isVisible(sousModele)) { + DialogHelper.showWarn(NbBundle.getMessage(PlanimetryNodeLayerModel.class, "AddEMH.SousModeleParDefautNotVisible")); + return; + } getLayerController().changeWillBeDone(); - PlanimetryControllerHelper helper = super.getLayerController().getHelper(); helper.scenarioEditionStarted(); final PlanimetryGisModelContainer planimetryGisAttributeContext = helper.getPlanimetryGisAttributeContext(); - EMHScenario scenario = planimetryGisAttributeContext.getScenario(); EditionCreateEMH creationHelper = new EditionCreateEMH(); //TODO a remplacer - final EMHSousModele sousModele = scenario.getModeles().get(0).getSousModeles().get(0); + CatEMHNoeud nd = creationHelper.createNoeud(sousModele, EnumNoeudType.EMHNoeudNiveauContinu); GISPoint gisPt = new GISPoint(_p.x_, _p.y_, 0); List data = planimetryGisAttributeContext.buildNodeData(nd); 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 2012-06-21 20:34:50 UTC (rev 7374) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/Bundle.properties 2012-06-21 20:36:45 UTC (rev 7375) @@ -9,4 +9,4 @@ RebuildLayout.Action=Reconstruire le r\u00e9seau CheckMinDistance.Action=Assurer une distance minimale Configure.Action=Configurer l'affichage -ConfigurationUI.Apply.Name=Appliquer +ConfigurationUI.Apply.Name=Appliquer \ No newline at end of file Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/action/Bundle.properties =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/action/Bundle.properties 2012-06-21 20:34:50 UTC (rev 7374) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/action/Bundle.properties 2012-06-21 20:36:45 UTC (rev 7375) @@ -4,3 +4,4 @@ SigLoaderAction.ImportPoints.CheckBox=Importer les {0} point(s) SigLoaderAction.ImportLignes.Confirmation=Le fichier comporte {0} ligne(s). Voulez-vous l''importer ? SigLoaderAction.ImportPoints.Confirmation=Le fichier comporte {0} point(s). Voulez-vous l''importer ? +AddCasierAction.Name=Ajouter des casiers Copied: trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/layer/Bundle.properties (from rev 7362, 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/layer/Bundle.properties (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/layer/Bundle.properties 2012-06-21 20:36:45 UTC (rev 7375) @@ -0,0 +1 @@ +AddEMH.SousModeleParDefautNotVisible=L'EMH ne peut pas \u00eatre ajout\u00e9 car le sous-mod\u00e8le par d\u00e9fautr n'est pas visible. Modified: trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/PlanimetryLauncher.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/PlanimetryLauncher.java 2012-06-21 20:34:50 UTC (rev 7374) +++ trunk/soft/fudaa-crue/ui-planimetry/src/test/java/org/fudaa/fudaa/crue/planimetry/PlanimetryLauncher.java 2012-06-21 20:36:45 UTC (rev 7375) @@ -36,6 +36,7 @@ import org.fudaa.dodico.crue.projet.ScenarioLoader; import org.fudaa.dodico.crue.projet.ScenarioLoaderResult; import org.fudaa.dodico.crue.projet.coeur.TestCoeurConfig; +import org.fudaa.fudaa.crue.planimetry.configuration.ContainerActivityVisibility; import org.fudaa.fudaa.crue.planimetry.configuration.VisuConfiguration; import org.fudaa.fudaa.crue.planimetry.save.PlanimetryGisLoader; import org.fudaa.fudaa.crue.planimetry.save.PlanimetryGisSaver; @@ -60,6 +61,9 @@ scenario.setIdRegistry(registry); final PlanimetryVisuPanel panel = builder.buildCalque(new CtuluUIDefault(), scenario, new VisuConfiguration(), readData.getPropDefinition()); + ContainerActivityVisibility activity=new ContainerActivityVisibility(); + activity.initialize(scenario); + panel.getPlanimetryController().setContainerActivityVisibility(activity); final JFrame frame = new JFrame(); JComponent buildInfosCreationComposant = panel.createGisEditionPalette(); @@ -142,6 +146,7 @@ } }); JPanel bottom = new JPanel(new FlowLayout(FlowLayout.LEFT)); + bottom.add(panel.getEditZonePanel().getPanel()); bottom.add(export); bottom.add(modify); bottom.add(cb); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-06-22 14:52:20
|
Revision: 7387 http://fudaa.svn.sourceforge.net/fudaa/?rev=7387&view=rev Author: deniger Date: 2012-06-22 14:52:11 +0000 (Fri, 22 Jun 2012) Log Message: ----------- Modified Paths: -------------- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListModificationProcess.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheModel.java trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/layer/Bundle.properties Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListModificationProcess.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListModificationProcess.java 2012-06-22 09:52:11 UTC (rev 7386) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListModificationProcess.java 2012-06-22 14:52:11 UTC (rev 7387) @@ -3,7 +3,7 @@ import gnu.trove.TLongObjectHashMap; import java.util.ArrayList; import java.util.List; -import org.fudaa.dodico.crue.edition.EditionReorderEMH; +import org.fudaa.dodico.crue.edition.ReorderEMHProcess; import org.fudaa.dodico.crue.metier.emh.CatEMHBranche; import org.fudaa.dodico.crue.metier.emh.CatEMHCasier; import org.fudaa.dodico.crue.metier.emh.EMH; @@ -29,7 +29,7 @@ ModellingScenarioModificationService.class); public void reorderNodes(EMHSousModele sousModele, List<? extends EMH> emhs) { - boolean reorderDone = EditionReorderEMH.reorder(sousModele, emhs, EnumCatEMH.NOEUD); + boolean reorderDone = ReorderEMHProcess.reorder(sousModele, emhs, EnumCatEMH.NOEUD); if (reorderDone && modellingScenarioModificationService != null) {//pour les tests: modellingScenarioModificationService.setScenarioModified(new ScenarioModificationEvent( EnumModification.EMH_ORDER)); @@ -37,7 +37,7 @@ } public void applyBranche(EMHSousModele sousModele, List<? extends CatEMHBranche> emhs, TLongObjectHashMap<Data> data) { - boolean reorderDone = EditionReorderEMH.reorder(sousModele, emhs, EnumCatEMH.BRANCHE); + boolean reorderDone = ReorderEMHProcess.reorder(sousModele, emhs, EnumCatEMH.BRANCHE); boolean activeModified = false; for (CatEMHBranche branche : emhs) { Data newData = data.get(branche.getUiId()); @@ -62,7 +62,7 @@ } public void applyCasier(EMHSousModele emhSousModele, List<CatEMHCasier> casiers, TLongObjectHashMap<Data> dataByUid) { - boolean reorderDone = EditionReorderEMH.reorder(emhSousModele, casiers, EnumCatEMH.CASIER); + boolean reorderDone = ReorderEMHProcess.reorder(emhSousModele, casiers, EnumCatEMH.CASIER); boolean activeModified = false; for (CatEMHCasier casier : casiers) { Data newData = dataByUid.get(casier.getUiId()); Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheModel.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheModel.java 2012-06-22 09:52:11 UTC (rev 7386) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/layer/PlanimetryBrancheModel.java 2012-06-22 14:52:11 UTC (rev 7387) @@ -1,7 +1,29 @@ package org.fudaa.fudaa.crue.planimetry.layer; +import com.vividsolutions.jts.geom.Coordinate; +import com.vividsolutions.jts.geom.Geometry; +import org.fudaa.ctulu.CtuluCommandContainer; +import org.fudaa.ctulu.CtuluUI; +import org.fudaa.ctulu.gis.CtuluLibGeometrie; +import org.fudaa.ctulu.gis.GISPoint; +import org.fudaa.ctulu.gis.GISPolyligne; import org.fudaa.ctulu.gis.GISZoneCollectionLigneBrisee; +import org.fudaa.ctulu.gis.GISZoneCollectionPoint; +import org.fudaa.dodico.crue.config.CrueConfigMetier; +import org.fudaa.dodico.crue.config.ItemVariable; +import org.fudaa.dodico.crue.edition.EditionCreateEMH; +import org.fudaa.dodico.crue.metier.emh.CatEMHBranche; +import org.fudaa.dodico.crue.metier.emh.CatEMHNoeud; +import org.fudaa.dodico.crue.metier.emh.EnumBrancheType; +import org.fudaa.ebli.calque.edition.ZEditionAttributesDataI; +import org.fudaa.ebli.geometrie.GrMorphisme; +import org.fudaa.ebli.geometrie.GrPolygone; +import org.fudaa.ebli.geometrie.GrPolyligne; +import org.fudaa.fudaa.crue.common.helper.DialogHelper; import org.fudaa.fudaa.crue.planimetry.controller.LayerBrancheController; +import org.fudaa.fudaa.crue.planimetry.controller.LayerNodeController; +import org.fudaa.fudaa.crue.planimetry.controller.PlanimetryControllerHelper; +import org.openide.util.NbBundle; /** * TODO ajouter visible/invisible pour branche inactive. @@ -13,5 +35,83 @@ super(_zone, modelController); } - + @Override + public boolean addGeometry(GrPolygone _p, CtuluCommandContainer _cmd, CtuluUI _ui, ZEditionAttributesDataI _d) { + return false; + } + + @Override + public boolean addGeometry(Geometry _p, CtuluCommandContainer _cmd, CtuluUI _ui, ZEditionAttributesDataI _d) { + return false; + } + + public int findPoint(Coordinate coordinate, double distance) { + final LayerNodeController nodeController = getLayerController().getHelper().getNodeController(); + GISZoneCollectionPoint nodeCollection = nodeController.getNodeCollection(); + int nb = nodeCollection.getNumGeometries(); + for (int i = 0; i < nb; i++) { + GISPoint noeudCoordinate = nodeCollection.get(i); + if (CtuluLibGeometrie.getDistance(noeudCoordinate.getX(), noeudCoordinate.getY(), coordinate.x, coordinate.y) <= distance) { + return i; + } + } + return -1; + } + + @Override + public boolean addGeometry(GrPolyligne _p, CtuluCommandContainer _cmd, CtuluUI _ui, ZEditionAttributesDataI _d) { + PlanimetryControllerHelper helper = super.getLayerController().getHelper(); + if (!helper.canEMHBeAddedAndDisplayError()) { + return false; + } + EnumBrancheType brancheType = helper.getCreationEMH().getBrancheType(); + if (brancheType == null) { + return false; + } + GISPolyligne polyligne = _p.toGIS(); + double length = polyligne.getLength(); + CrueConfigMetier crueConfigMetier = helper.getController().getCrueConfigMetier(); + final ItemVariable property = crueConfigMetier.getProperty("xp"); + double minValue = property.getValidator().getRangeValidate().getMin().doubleValue(); + if (length < minValue) { + DialogHelper.showError(NbBundle.getMessage(PlanimetryBrancheModel.class, "AddBrancheMinLongueurNotRespected.error", + property.getFormatter().format(minValue))); + return false; + } + final LayerNodeController nodeController = helper.getController().getNodeController(); + //la distance en pixel + double distance = nodeController.getLayer().getLayerConfiguration().getRayon(); + //la distance en réelle: + distance = GrMorphisme.convertDistanceXY(getLayerController().getLayer().getVersReel(), distance); + Coordinate amont = polyligne.getCoordinateN(LayerBrancheController.getAmontCoordinatePosition()); + int noeudAmontIdx = findPoint(amont, distance); + Coordinate aval = polyligne.getCoordinateN(LayerBrancheController.getAvalCoordinatePosition(polyligne.getNumPoints())); + int noeudAvalIdx = findPoint(aval, distance); + if (noeudAmontIdx >= 0 && noeudAvalIdx >= 0 && noeudAmontIdx == noeudAvalIdx) { + DialogHelper.showError(NbBundle.getMessage(PlanimetryBrancheModel.class, "AddBrancheNotValidSameNoeuds.error")); + return false; + } + CatEMHNoeud noeudAmont = noeudAmontIdx >= 0 ? (CatEMHNoeud) nodeController.getEMHFromPositionInModel(noeudAmontIdx) : null; + CatEMHNoeud noeudAval = noeudAvalIdx >= 0 ? (CatEMHNoeud) nodeController.getEMHFromPositionInModel(noeudAvalIdx) : null; + + getLayerController().changeWillBeDone(); + helper.scenarioEditionStarted(); + CatEMHBranche createBranche = new EditionCreateEMH().createBranche(helper.getDefaultSousModele(), brancheType, noeudAmont, + noeudAval, crueConfigMetier,distance); + if (createBranche != null) { + if (noeudAmont == null) { + noeudAmont = createBranche.getNoeudAmont(); + PlanimetryNodeLayerModel nodeModel = (PlanimetryNodeLayerModel) nodeController.getLayer().modeleDonnees(); + nodeModel.addNoeud(noeudAmont, new GISPoint(amont)); + } + if (noeudAval == null) { + noeudAval = createBranche.getNoeudAval(); + PlanimetryNodeLayerModel nodeModel = (PlanimetryNodeLayerModel) nodeController.getLayer().modeleDonnees(); + nodeModel.addNoeud(noeudAval, new GISPoint(aval)); + } + Object[] data = helper.getPlanimetryGisModelContainer().buildEdgeData(createBranche); + getGeometries().addGeometry(polyligne, data, null); + } + return true; + } } Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/layer/Bundle.properties =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/layer/Bundle.properties 2012-06-22 09:52:11 UTC (rev 7386) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/layer/Bundle.properties 2012-06-22 14:52:11 UTC (rev 7387) @@ -1 +1,3 @@ AddEMH.SousModeleParDefautNotVisible=L'EMH ne peut pas \u00eatre ajout\u00e9 car le sous-mod\u00e8le par d\u00e9fautr n'est pas visible. +AddBrancheMinLongueurNotRespected.error=La longueur minimum d''une branche est de {0} +AddBrancheNotValidSameNoeuds.error=Les noeuds aval et amont de la branche sont identiques \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-06-25 07:54:45
|
Revision: 7393 http://fudaa.svn.sourceforge.net/fudaa/?rev=7393&view=rev Author: deniger Date: 2012-06-25 07:54:30 +0000 (Mon, 25 Jun 2012) Log Message: ----------- Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionBrancheCreator.java trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionProfilCreator.java trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionSectionCreator.java trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/factory/CruePrefix.java trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/factory/LoiFactory.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/action/AddCasierAction.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/CreationEMHSelectedType.java trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/action/Bundle.properties Added Paths: ----------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionLoiCreator.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddBrancheAction.java trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddNoeudAction.java Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionBrancheCreator.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionBrancheCreator.java 2012-06-25 07:52:58 UTC (rev 7392) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionBrancheCreator.java 2012-06-25 07:54:30 UTC (rev 7393) @@ -5,15 +5,37 @@ import org.fudaa.dodico.crue.config.CrueConfigMetier; import org.fudaa.dodico.crue.metier.emh.CatEMHBranche; import org.fudaa.dodico.crue.metier.emh.CatEMHNoeud; +import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBrancheBarrageFilEau; +import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBrancheBarrageGenerique; +import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBrancheNiveauxAssocies; +import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBrancheOrifice; +import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBranchePdc; +import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBrancheSaintVenant; +import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBrancheSeuilLateral; +import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBrancheSeuilTransversal; +import org.fudaa.dodico.crue.metier.emh.DonPrtGeoBrancheSaintVenant; import org.fudaa.dodico.crue.metier.emh.EMHBrancheBarrageFilEau; +import org.fudaa.dodico.crue.metier.emh.EMHBrancheBarrageGenerique; +import org.fudaa.dodico.crue.metier.emh.EMHBrancheEnchainement; +import org.fudaa.dodico.crue.metier.emh.EMHBrancheNiveauxAssocies; +import org.fudaa.dodico.crue.metier.emh.EMHBrancheOrifice; +import org.fudaa.dodico.crue.metier.emh.EMHBranchePdc; import org.fudaa.dodico.crue.metier.emh.EMHBrancheSaintVenant; +import org.fudaa.dodico.crue.metier.emh.EMHBrancheSeuilLateral; +import org.fudaa.dodico.crue.metier.emh.EMHBrancheSeuilTransversal; +import org.fudaa.dodico.crue.metier.emh.EMHBrancheStrickler; import org.fudaa.dodico.crue.metier.emh.EMHScenario; import org.fudaa.dodico.crue.metier.emh.EMHSectionProfil; +import org.fudaa.dodico.crue.metier.emh.EMHSectionSansGeometrie; import org.fudaa.dodico.crue.metier.emh.EMHSousModele; +import org.fudaa.dodico.crue.metier.emh.ElemOrifice; +import org.fudaa.dodico.crue.metier.emh.ElemSeuil; +import org.fudaa.dodico.crue.metier.emh.ElemSeuilAvecPdc; import org.fudaa.dodico.crue.metier.emh.EnumBrancheType; import org.fudaa.dodico.crue.metier.emh.EnumCatEMH; import org.fudaa.dodico.crue.metier.emh.EnumNoeudType; import org.fudaa.dodico.crue.metier.emh.EnumPosSection; +import org.fudaa.dodico.crue.metier.emh.EnumTypeLoi; import org.fudaa.dodico.crue.metier.emh.RelationEMHSectionDansBranche; import org.fudaa.dodico.crue.metier.factory.EMHFactory; @@ -25,10 +47,12 @@ EditionSectionCreator sectionCreator; EditionNoeudCreator noeudCreator; + EditionLoiCreator loiCreator; public EditionBrancheCreator(EditionSectionCreator sectionCreator, EditionNoeudCreator noeudCreator) { this.sectionCreator = sectionCreator; this.noeudCreator = noeudCreator; + loiCreator = new EditionLoiCreator(sectionCreator.getUniqueNomFinder()); } public CatEMHBranche createBranche(EMHSousModele sousModele, EnumBrancheType brancheType, CatEMHNoeud noeudAmont, @@ -45,7 +69,7 @@ if (noeudAvalToUse == null) { noeudAvalToUse = noeudCreator.createNoeud(sousModele, EnumNoeudType.EMHNoeudNiveauContinu); } - assert !noeudAmontToUse.getNom().equals(noeudAmontToUse.getNom()); + assert !noeudAmontToUse.getNom().equals(noeudAvalToUse.getNom()); branche.setNoeudAmont(noeudAmontToUse); branche.setNoeudAval(noeudAvalToUse); EditionCreateEMH.addInScenario(sousModele, branche, scenario); @@ -84,54 +108,102 @@ double distance) { EMHBrancheBarrageFilEau branche = new EMHBrancheBarrageFilEau(name); addDefaultsSectionProfils(ccm, name, sousModele, branche, distance); + final DonCalcSansPrtBrancheBarrageFilEau dcsp = new DonCalcSansPrtBrancheBarrageFilEau(ccm); + dcsp.setRegimeDenoye(loiCreator.createLoiFF(name, sousModele.getParent().getParent(), EnumTypeLoi.LoiQpilZam, ccm)); + dcsp.addElemSeuil(new ElemSeuil(ccm)); + + branche.addInfosEMH(dcsp); return branche; } - private static CatEMHBranche createEMHBrancheBarrageGenerique(String name, CrueConfigMetier ccm, EMHSousModele sousModele, - double distance) { - throw new UnsupportedOperationException("Not yet implemented"); + private CatEMHBranche createEMHBrancheBarrageGenerique(String name, CrueConfigMetier ccm, EMHSousModele sousModele, + double distance) { + EMHBrancheBarrageGenerique branche = new EMHBrancheBarrageGenerique(name); + addDefaultsSectionProfils(ccm, name, sousModele, branche, distance); + final DonCalcSansPrtBrancheBarrageGenerique dcsp = new DonCalcSansPrtBrancheBarrageGenerique(ccm); + dcsp.setRegimeDenoye(loiCreator.createLoiFF(name, sousModele.getParent().getParent(), EnumTypeLoi.LoiQpilZam, ccm)); + dcsp.setRegimeNoye(loiCreator.createLoiFF(name, sousModele.getParent().getParent(), EnumTypeLoi.LoiQDz, ccm)); + branche.addInfosEMH(dcsp); + + return branche; } - private static CatEMHBranche createEMHBrancheEnchainement(String name, CrueConfigMetier ccm, EMHSousModele sousModele, - double distance) { - throw new UnsupportedOperationException("Not yet implemented"); + private CatEMHBranche createEMHBrancheEnchainement(String name, CrueConfigMetier ccm, EMHSousModele sousModele, + double distance) { + EMHBrancheEnchainement branche = new EMHBrancheEnchainement(name); +// final DonCalcSansPrtBrancheNiveauxAssocies dcsp = new DonCalcSansPrtBrancheNiveauxAssocies(ccm); +// dcsp.setZasso(loiCreator.createLoiFF(name, sousModele.getParent().getParent(), EnumTypeLoi.LoiZavZam, ccm)); +// branche.addInfosEMH(dcsp); + addDefaultsSectionSansGeometrie(ccm, name, sousModele, branche, distance); + return branche; } - private static CatEMHBranche createEMHBrancheNiveauxAssocies(String name, CrueConfigMetier ccm, EMHSousModele sousModele, - double distance) { - throw new UnsupportedOperationException("Not yet implemented"); + private CatEMHBranche createEMHBrancheNiveauxAssocies(String name, CrueConfigMetier ccm, EMHSousModele sousModele, + double distance) { + EMHBrancheNiveauxAssocies branche = new EMHBrancheNiveauxAssocies(name); + final DonCalcSansPrtBrancheNiveauxAssocies dcsp = new DonCalcSansPrtBrancheNiveauxAssocies(ccm); + dcsp.setZasso(loiCreator.createLoiFF(name, sousModele.getParent().getParent(), EnumTypeLoi.LoiZavZam, ccm)); + branche.addInfosEMH(dcsp); + addDefaultsSectionSansGeometrie(ccm, name, sousModele, branche, distance); + return branche; } - private static CatEMHBranche createEMHBrancheOrifice(String name, CrueConfigMetier ccm, EMHSousModele sousModele, - double distance) { - throw new UnsupportedOperationException("Not yet implemented"); + private CatEMHBranche createEMHBrancheOrifice(String name, CrueConfigMetier ccm, EMHSousModele sousModele, + double distance) { + EMHBrancheOrifice branche = new EMHBrancheOrifice(name); + final DonCalcSansPrtBrancheOrifice donCalcSansPrtBrancheOrifice = new DonCalcSansPrtBrancheOrifice(); + donCalcSansPrtBrancheOrifice.setElemOrifice(new ElemOrifice(ccm)); + branche.addInfosEMH(donCalcSansPrtBrancheOrifice); + addDefaultsSectionSansGeometrie(ccm, name, sousModele, branche, distance); + return branche; } - private static CatEMHBranche createEMHBranchePdc(String name, CrueConfigMetier ccm, EMHSousModele sousModele, - double distance) { - throw new UnsupportedOperationException("Not yet implemented"); + private CatEMHBranche createEMHBranchePdc(String name, CrueConfigMetier ccm, EMHSousModele sousModele, + double distance) { + EMHBranchePdc branche = new EMHBranchePdc(name); + final DonCalcSansPrtBranchePdc dcsp = new DonCalcSansPrtBranchePdc(); + dcsp.setPdc(loiCreator.createLoiFF(name, sousModele.getParent().getParent(), EnumTypeLoi.LoiQPdc, ccm)); + branche.addInfosEMH(dcsp); + addDefaultsSectionSansGeometrie(ccm, name, sousModele, branche, distance); + return branche; } private CatEMHBranche createEMHBrancheSaintVenant(String name, CrueConfigMetier ccm, EMHSousModele sousModele, double distance) { EMHBrancheSaintVenant branche = new EMHBrancheSaintVenant(name); addDefaultsSectionProfils(ccm, name, sousModele, branche, distance); + DonPrtGeoBrancheSaintVenant dptg = new DonPrtGeoBrancheSaintVenant(ccm); + DonCalcSansPrtBrancheSaintVenant dcsp = new DonCalcSansPrtBrancheSaintVenant(ccm); + branche.addInfosEMH(dptg); + branche.addInfosEMH(dcsp); return branche; } - private static CatEMHBranche createEMHBrancheSeuilLateral(String name, CrueConfigMetier ccm, EMHSousModele sousModele, - double distance) { - throw new UnsupportedOperationException("Not yet implemented"); + private CatEMHBranche createEMHBrancheSeuilLateral(String name, CrueConfigMetier ccm, EMHSousModele sousModele, + double distance) { + EMHBrancheSeuilLateral branche = new EMHBrancheSeuilLateral(name); + final DonCalcSansPrtBrancheSeuilLateral dcsp = new DonCalcSansPrtBrancheSeuilLateral(); + dcsp.addElemSeuilAvecPdc(new ElemSeuilAvecPdc(ccm)); + branche.addInfosEMH(dcsp); + addDefaultsSectionSansGeometrie(ccm, name, sousModele, branche, distance); + return branche; } - private static CatEMHBranche createEMHBrancheSeuilTransversal(String name, CrueConfigMetier ccm, EMHSousModele sousModele, - double distance) { - throw new UnsupportedOperationException("Not yet implemented"); + private CatEMHBranche createEMHBrancheSeuilTransversal(String name, CrueConfigMetier ccm, EMHSousModele sousModele, + double distance) { + EMHBrancheSeuilTransversal branche = new EMHBrancheSeuilTransversal(name); + final DonCalcSansPrtBrancheSeuilTransversal dcsp = new DonCalcSansPrtBrancheSeuilTransversal(); + dcsp.addElemSeuilAvecPdc(new ElemSeuilAvecPdc(ccm)); + branche.addInfosEMH(dcsp); + addDefaultsSectionSansGeometrie(ccm, name, sousModele, branche, distance); + return branche; } - private static CatEMHBranche createEMHBrancheStrickler(String name, CrueConfigMetier ccm, EMHSousModele sousModele, - double distance) { - throw new UnsupportedOperationException("Not yet implemented"); + private CatEMHBranche createEMHBrancheStrickler(String name, CrueConfigMetier ccm, EMHSousModele sousModele, + double distance) { + EMHBrancheStrickler branche = new EMHBrancheStrickler(name); + addDefaultsSectionProfils(ccm, name, sousModele, branche, distance); + return branche; } public void addDefaultsSectionProfils(CrueConfigMetier ccm, String name, EMHSousModele sousModele, @@ -145,4 +217,16 @@ EnumPosSection.AVAL, ccm); branche.addListeSections(Arrays.asList(relationAmont, relationAval)); } + + public void addDefaultsSectionSansGeometrie(CrueConfigMetier ccm, String name, EMHSousModele sousModele, + CatEMHBranche branche, double distance) { + List<EMHSectionSansGeometrie> newSections = sectionCreator.createEMHSectionSansGeometrie(ccm, name, sousModele); + EMHSectionSansGeometrie amont = newSections.get(0); + EMHSectionSansGeometrie aval = newSections.get(1); + RelationEMHSectionDansBranche relationAmont = EMHFactory.createRelationSectionDansBranche(branche, amont, 0, + EnumPosSection.AMONT, ccm); + RelationEMHSectionDansBranche relationAval = EMHFactory.createRelationSectionDansBranche(branche, aval, distance, + EnumPosSection.AVAL, ccm); + branche.addListeSections(Arrays.asList(relationAmont, relationAval)); + } } Added: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionLoiCreator.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionLoiCreator.java (rev 0) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionLoiCreator.java 2012-06-25 07:54:30 UTC (rev 7393) @@ -0,0 +1,51 @@ +package org.fudaa.dodico.crue.edition; + +import java.util.List; +import java.util.Set; +import org.fudaa.dodico.crue.config.ConfigLoi; +import org.fudaa.dodico.crue.config.CrueConfigMetier; +import org.fudaa.dodico.crue.metier.emh.EMHScenario; +import org.fudaa.dodico.crue.metier.emh.EnumCatEMH; +import org.fudaa.dodico.crue.metier.emh.EnumTypeLoi; +import org.fudaa.dodico.crue.metier.emh.Loi; +import org.fudaa.dodico.crue.metier.emh.LoiFF; +import org.fudaa.dodico.crue.metier.factory.CruePrefix; +import org.fudaa.dodico.crue.metier.factory.LoiFactory; +import org.fudaa.dodico.crue.metier.transformer.TransformerHelper; + +/** + * + * @author deniger ( genesis) + */ +public class EditionLoiCreator { + + private UniqueNomFinder uniqueNomFinder; + + public EditionLoiCreator(UniqueNomFinder uniqueNomFinder) { + this.uniqueNomFinder = uniqueNomFinder; + } + + /** + * Rappel: ces lois ne sont pas ajouté dans le dlhy. + * @param name + * @param scenario + * @param typeLoi + * @param ccm + * @return + */ + public LoiFF createLoiFF(String name, EMHScenario scenario, EnumTypeLoi typeLoi, CrueConfigMetier ccm) { + List<Loi> lois = scenario.getLoiConteneur().getLois(); + Set<String> toSetOfId = TransformerHelper.toSetOfId(lois); + String prefix = CruePrefix.getPrefix(typeLoi); + String loiName = CruePrefix.getNomAvecPrefixe(prefix, name); + loiName = uniqueNomFinder.findUniqueName(toSetOfId, loiName); + LoiFF loi = new LoiFF(); + LoiFactory.alimenteDebutLoiFF(loi, loiName, typeLoi); + ConfigLoi configLoi = ccm.getConfLoi().get(typeLoi); + double x = configLoi.getVarAbscisse().getDefaultValue().doubleValue(); + double y = configLoi.getVarOrdonnee().getDefaultValue().doubleValue(); + LoiFactory.alimenteEvolutionFF(loi, new double[]{x}, new double[]{y}); +// scenario.getLoiConteneur().addLois(loi); + return loi; + } +} Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionProfilCreator.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionProfilCreator.java 2012-06-25 07:52:58 UTC (rev 7392) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionProfilCreator.java 2012-06-25 07:54:30 UTC (rev 7393) @@ -37,8 +37,6 @@ protected UniqueNomFinder getUniqueNomFinder() { return uniqueNomFinder; } - - protected DonFrt getFrt(String name, EMHSousModele sousModele, CrueConfigMetier ccm) { DonFrt defaultFrt = sousModele.getFrtConteneur().getDefaultFrt(); @@ -63,10 +61,9 @@ DonFrtStrickler newFrt = EMHFactory.createDonFrtStrickler(frtName); ConfigLoi configLoi = ccm.getConfLoi().get(EnumTypeLoi.LoiZFK); PtEvolutionFF point = new PtEvolutionFF(); - point.setAbscisse(configLoi.getVarAbscisse().getDefaultValue().doubleValue()); - point.setOrdonnee(configLoi.getVarOrdonnee().getDefaultValue().doubleValue()); + point.setAbscisse(configLoi.getVarAbscisse().getValidator().getRangeNormalite().getMin().doubleValue()); + point.setOrdonnee(configLoi.getVarOrdonnee().getValidator().getRangeNormalite().getMin().doubleValue()); newFrt.getLoi().getEvolutionFF().getPtEvolutionFF().add(point); - newFrt.setStrickler(null); return newFrt; } @@ -86,11 +83,12 @@ protected DonPrtGeoProfilSection createProfilSection(CrueConfigMetier ccm, String name, EMHSousModele ssModele) { DonPrtGeoProfilSection section = new DonPrtGeoProfilSection(); - String nom = CruePrefix.getNomAvecPrefixe(name, CruePrefix.P_PROFIL_SECTION); + String nom = CruePrefix.getNomAvecPrefixe(CruePrefix.P_PROFIL_SECTION, name); //on s'assure de l'unicite du nom: nom = uniqueNomFinder.findUniqueNameProfilSection(nom, ssModele.getParent().getParent()); section.setNom(nom); List<PtProfil> ptProfils = createDefaultPtProfil(ccm); + section.setPtProfil(ptProfils); assert ptProfils.size() == 2; DonFrt frt = getFrt(name, ssModele, ccm); LitNumerote litMineur = new LitNumerote(); Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionSectionCreator.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionSectionCreator.java 2012-06-25 07:52:58 UTC (rev 7392) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionSectionCreator.java 2012-06-25 07:54:30 UTC (rev 7393) @@ -7,6 +7,7 @@ import org.fudaa.dodico.crue.metier.emh.DonPrtGeoProfilSection; import org.fudaa.dodico.crue.metier.emh.EMHScenario; import org.fudaa.dodico.crue.metier.emh.EMHSectionProfil; +import org.fudaa.dodico.crue.metier.emh.EMHSectionSansGeometrie; import org.fudaa.dodico.crue.metier.emh.EMHSousModele; import org.fudaa.dodico.crue.metier.emh.EnumCatEMH; import org.fudaa.dodico.crue.metier.factory.CruePrefix; @@ -55,4 +56,22 @@ EditionCreateEMH.addInScenario(ssModele, sectionAval, scenario); return Arrays.asList(sectionAmont, sectionAval); } + + protected List<EMHSectionSansGeometrie> createEMHSectionSansGeometrie(CrueConfigMetier ccm, String brancheName, + EMHSousModele ssModele) { + EMHScenario scenario = ssModele.getParent().getParent(); + String sectionName = CruePrefix.getNomAvecPrefixFor(brancheName, EnumCatEMH.SECTION); + String sectionAvalName = BusinessMessages.getString("create.SectionAval", sectionName); + String sectionAmontName = BusinessMessages.getString("create.SectionAmont", sectionName); + //on s'assure de l'unicité: + sectionAmontName = profilCreator.getUniqueNomFinder().findUniqueName(EnumCatEMH.SECTION, scenario, sectionAmontName); + sectionAvalName = profilCreator.getUniqueNomFinder().findUniqueName(EnumCatEMH.SECTION, scenario, sectionAvalName); + + EMHSectionSansGeometrie sectionAmont = new EMHSectionSansGeometrie(sectionAmontName); + EditionCreateEMH.addInScenario(ssModele, sectionAmont, scenario);//toujours faire cela à la fin de la creation pour assure des noms uniques + + EMHSectionSansGeometrie sectionAval = new EMHSectionSansGeometrie(sectionAvalName); + EditionCreateEMH.addInScenario(ssModele, sectionAval, scenario); + return Arrays.asList(sectionAmont, sectionAval); + } } Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/factory/CruePrefix.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/factory/CruePrefix.java 2012-06-25 07:52:58 UTC (rev 7392) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/factory/CruePrefix.java 2012-06-25 07:54:30 UTC (rev 7393) @@ -224,7 +224,7 @@ return !nom.startsWith(prefixe); } - private static String getPrefix(final EnumTypeLoi typeLoi) { + public static String getPrefix(final EnumTypeLoi typeLoi) { return typeLoi.getId() + "_"; } Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/factory/LoiFactory.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/factory/LoiFactory.java 2012-06-25 07:52:58 UTC (rev 7392) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/factory/LoiFactory.java 2012-06-25 07:54:30 UTC (rev 7393) @@ -1,5 +1,5 @@ /** - * + * */ package org.fudaa.dodico.crue.metier.factory; @@ -20,7 +20,7 @@ /** * Alimente les données unitaires d'une LoiFF - * + * * @param loiFF Loi à alimenter * @param nom Nom de la loi */ @@ -51,17 +51,17 @@ /** * Alimente la liste des points de la LoiFF seulement s'il existe un moins un point et s'il y a autant d'abscisses que * d'ordonnées - * + * * @param loiFF Loi à alimenter * @param abscisses Liste des abscisses * @param ordonnees Liste des ordonnées - * @return true si EvolutionFF a pu être alimentée, false si le tableau des abscisses et celui des ordonnées n'ont pas - * la même taille ou si aucun point défini + * @return true si EvolutionFF a pu être alimentée, false si le tableau des abscisses et celui des ordonnées n'ont pas la même + * taille ou si aucun point défini */ public static boolean alimenteEvolutionFF(final LoiFF loiFF, final float[] abscisses, final float[] ordonnees) { - if (abscisses == null || ordonnees == null || abscisses.length != ordonnees.length || abscisses.length == 0) { - return false; + if (abscisses == null || ordonnees == null || abscisses.length != ordonnees.length || abscisses.length == 0) { + return false; } final EvolutionFF evolutionFF = new EvolutionFF(); @@ -77,16 +77,35 @@ return true; } + public static boolean alimenteEvolutionFF(final LoiFF loiFF, final double[] abscisses, final double[] ordonnees) { + + if (abscisses == null || ordonnees == null || abscisses.length != ordonnees.length || abscisses.length == 0) { + return false; + } + + final EvolutionFF evolutionFF = new EvolutionFF(); + loiFF.setEvolutionFF(evolutionFF); + final List<PtEvolutionFF> ptsFF = new ArrayList<PtEvolutionFF>(); + + for (int i = 0, imax = abscisses.length; i < imax; i++) { + final PtEvolutionFF ptFF = new PtEvolutionFF(abscisses[i], ordonnees[i]); + ptsFF.add(ptFF); + } + evolutionFF.setPtEvolutionFF(ptsFF); + + return true; + } + /** * Récupère une loi (indépendemment du type d'abscisses), à partir des données passées en paramètres - * + * * @param abscisses Ensemble des abscisses * @param ordonnees Ensemble d'ordonnées * @param nomLoi Nom à donner à la loi * @return LoiFF ou null si la loi n'a pas eu être créée */ public static LoiFF getLoiFFRPTG(final float[] abscisses, final float[] ordonnees, final String nomLoi, - final EnumTypeLoi type) { + final EnumTypeLoi type) { final LoiFF loiFF = new LoiFF(); final boolean ok = alimenteEvolutionFF(loiFF, abscisses, ordonnees); @@ -97,5 +116,4 @@ return null; } - } 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 2012-06-25 07:52:58 UTC (rev 7392) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/PlanimetryVisuPanel.java 2012-06-25 07:54:30 UTC (rev 7393) @@ -35,7 +35,9 @@ import org.fudaa.ebli.commun.EbliActionMap; import org.fudaa.ebli.commun.EbliComponentFactory; import org.fudaa.ebli.commun.EbliLib; +import org.fudaa.fudaa.crue.planimetry.action.AddBrancheAction; import org.fudaa.fudaa.crue.planimetry.action.AddCasierAction; +import org.fudaa.fudaa.crue.planimetry.action.AddNoeudAction; import org.fudaa.fudaa.crue.planimetry.action.EditZonePanel; import org.fudaa.fudaa.sig.layer.FSigEditor; import org.fudaa.fudaa.sig.layer.FSigLayerGroup; @@ -222,9 +224,15 @@ action.updateBeforeShow(); editZonePanel = new EditZonePanel(); PlanimetryGisPaletteEdition palette = action.getPalette(); - AddCasierAction addCasier = new AddCasierAction(palette,planimetryCalqueContext, editZonePanel); + AddNoeudAction addNoeud = new AddNoeudAction(palette, planimetryCalqueContext, editZonePanel); + AddCasierAction addCasier = new AddCasierAction(palette, planimetryCalqueContext, editZonePanel); + AddBrancheAction addBranche = new AddBrancheAction(palette, planimetryCalqueContext, editZonePanel); + getPlanimetryVisuController().addEditAction(addNoeud); getPlanimetryVisuController().addEditAction(addCasier); + getPlanimetryVisuController().addEditAction(addBranche); content.add(new JSeparator()); + content.add(add(addNoeud.buildToolButton(EbliComponentFactory.INSTANCE))); + content.add(add(addBranche.buildToolButton(EbliComponentFactory.INSTANCE))); content.add(add(addCasier.buildToolButton(EbliComponentFactory.INSTANCE))); return content; } Copied: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddBrancheAction.java (from rev 7375, trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddCasierAction.java) =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddBrancheAction.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddBrancheAction.java 2012-06-25 07:54:30 UTC (rev 7393) @@ -0,0 +1,45 @@ +package org.fudaa.fudaa.crue.planimetry.action; + +import java.awt.Color; +import javax.swing.Icon; +import javax.swing.JComponent; +import org.fudaa.ebli.calque.ZCalqueAffichageDonnees; +import org.fudaa.ebli.calque.edition.BPaletteEdition; +import org.fudaa.ebli.trace.TraceIcon; +import org.fudaa.ebli.trace.TraceIconModel; +import org.fudaa.fudaa.crue.planimetry.PlanimetryGisPaletteEdition; +import org.fudaa.fudaa.crue.planimetry.controller.PlanimetryController; +import org.openide.util.NbBundle; + +/** + * + * @author deniger ( genesis) + */ +public class AddBrancheAction extends AbstractAddAction { + + private static Icon createIcon() { + TraceIconModel model = new TraceIconModel(TraceIcon.LIGNE_OBLIQUE, 10, Color.CYAN); + model.setEpaisseurLigne(2); + return new TraceIcon(model); + } + + public AddBrancheAction(PlanimetryGisPaletteEdition palette, PlanimetryController controller, EditZone zone) { + super(palette, controller, zone, NbBundle.getMessage(AddBrancheAction.class, "AddBrancheAction.Name"), createIcon(), + "ADD_BRANCHE"); + } + + @Override + public String getDefaultPaletteAction() { + return BPaletteEdition.ADD_POLYLINE_ACTION; + } + + @Override + protected JComponent getEditionComponent() { + return controller.getHelper().getCreationEMH().getBrancheComboBox(); + } + + @Override + protected ZCalqueAffichageDonnees getLayer() { + return controller.getBrancheController().getLayer(); + } +} Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddCasierAction.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddCasierAction.java 2012-06-25 07:52:58 UTC (rev 7392) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddCasierAction.java 2012-06-25 07:54:30 UTC (rev 7393) @@ -29,6 +29,7 @@ "ADD_CASIER"); } + @Override public String getDefaultPaletteAction() { return BPaletteEdition.ADD_RECTANGLE_ACTION; } Copied: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddNoeudAction.java (from rev 7375, trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddCasierAction.java) =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddNoeudAction.java (rev 0) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/action/AddNoeudAction.java 2012-06-25 07:54:30 UTC (rev 7393) @@ -0,0 +1,45 @@ +package org.fudaa.fudaa.crue.planimetry.action; + +import java.awt.Color; +import javax.swing.Icon; +import javax.swing.JComponent; +import org.fudaa.ebli.calque.ZCalqueAffichageDonnees; +import org.fudaa.ebli.calque.edition.BPaletteEdition; +import org.fudaa.ebli.trace.TraceIcon; +import org.fudaa.ebli.trace.TraceIconModel; +import org.fudaa.fudaa.crue.planimetry.PlanimetryGisPaletteEdition; +import org.fudaa.fudaa.crue.planimetry.controller.PlanimetryController; +import org.openide.util.NbBundle; + +/** + * + * @author deniger ( genesis) + */ +public class AddNoeudAction extends AbstractAddAction { + + private static Icon createIcon() { + TraceIconModel model = new TraceIconModel(TraceIcon.CERCLE, 10, Color.BLACK); + model.setBackgroundColor(Color.WHITE); + model.setBackgroundColorPainted(true); + return new TraceIcon(model); + } + + public AddNoeudAction(PlanimetryGisPaletteEdition palette, PlanimetryController controller, EditZone zone) { + super(palette, controller, zone, NbBundle.getMessage(AddNoeudAction.class, "AddNoeudAction.Name"), createIcon(), + "ADD_NOEUD"); + } + + public String getDefaultPaletteAction() { + return BPaletteEdition.ADD_POINT_ACTION; + } + + @Override + protected JComponent getEditionComponent() { + return null; + } + + @Override + protected ZCalqueAffichageDonnees getLayer() { + return controller.getNodeController().getLayer(); + } +} Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/CreationEMHSelectedType.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/CreationEMHSelectedType.java 2012-06-25 07:52:58 UTC (rev 7392) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/CreationEMHSelectedType.java 2012-06-25 07:54:30 UTC (rev 7393) @@ -56,10 +56,11 @@ return cbCasier; } - public JComboBox createBrancheComboBox() { + public JComboBox getBrancheComboBox() { if (cbBranche == null) { -// List<EnumBrancheType> values = new ArrayList<EnumBrancheType>(Arrays.asList(EnumBrancheType.values())); - cbBranche = new JComboBox(EnumBrancheType.values()); + List<EnumBrancheType> values = new ArrayList<EnumBrancheType>(Arrays.asList(EnumBrancheType.values())); + values.remove(EnumBrancheType.EMHBrancheEnchainement); + cbBranche = new JComboBox(values.toArray()); cbBranche.setRenderer(renderer); cbBranche.setSelectedItem(brancheType); cbBranche.addItemListener(new ItemListener() { Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/action/Bundle.properties =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/action/Bundle.properties 2012-06-25 07:52:58 UTC (rev 7392) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/resources/org/fudaa/fudaa/crue/planimetry/action/Bundle.properties 2012-06-25 07:54:30 UTC (rev 7393) @@ -5,3 +5,5 @@ SigLoaderAction.ImportLignes.Confirmation=Le fichier comporte {0} ligne(s). Voulez-vous l''importer ? SigLoaderAction.ImportPoints.Confirmation=Le fichier comporte {0} point(s). Voulez-vous l''importer ? AddCasierAction.Name=Ajouter des casiers +AddNoeudAction.Name=Ajouter des noeuds +AddBrancheAction.Name=Ajouter des branches This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-07-02 19:50:52
|
Revision: 7434 http://fudaa.svn.sourceforge.net/fudaa/?rev=7434&view=rev Author: deniger Date: 2012-07-02 19:50:45 +0000 (Mon, 02 Jul 2012) Log Message: ----------- maj listes d'EMH Modified Paths: -------------- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/log/property/LogIdProperty.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListAjoutNoeudProcess.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListCasierModificationProcess.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/list/ListRelationSectionContentNode.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/list/ModellingListSectionTopComponent.java Added Paths: ----------- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListRelationSectionProcess.java Modified: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/log/property/LogIdProperty.java =================================================================== --- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/log/property/LogIdProperty.java 2012-07-02 19:49:06 UTC (rev 7433) +++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/log/property/LogIdProperty.java 2012-07-02 19:50:45 UTC (rev 7434) @@ -22,7 +22,7 @@ public LogIdProperty(CtuluLogRecord record) { super(ID, String.class, getDefaultDisplayName(), - getDescription()); + getDescription()); this.record = record; PropertyCrueUtils.configureNoCustomEditor(this); } @@ -46,11 +46,11 @@ @Override public String toString() { - return Integer.toString(record.getId()); + return record.getId(); } @Override public String getValue() throws IllegalAccessException, InvocationTargetException { - return Integer.toString(record.getId()); + return record.getId(); } } Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListAjoutNoeudProcess.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListAjoutNoeudProcess.java 2012-07-02 19:49:06 UTC (rev 7433) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListAjoutNoeudProcess.java 2012-07-02 19:50:45 UTC (rev 7434) @@ -9,8 +9,6 @@ import java.util.Set; import org.apache.commons.lang.StringUtils; import org.fudaa.ctulu.CtuluLog; -import org.fudaa.dodico.crue.common.Pair; -import org.fudaa.dodico.crue.edition.CreationCasierData; import org.fudaa.dodico.crue.edition.CreationNoeudData; import org.fudaa.dodico.crue.edition.EditionCreateEMH; import org.fudaa.dodico.crue.metier.emh.EMH; @@ -19,7 +17,6 @@ import org.fudaa.dodico.crue.metier.emh.EnumNoeudType; import org.fudaa.dodico.crue.metier.transformer.TransformerHelper; import org.fudaa.dodico.crue.validation.ValidationPatternHelper; -import org.fudaa.fudaa.crue.modelling.list.AbstractListContent; import org.fudaa.fudaa.crue.modelling.list.ListNoeudContent; import org.fudaa.fudaa.crue.modelling.list.ListNoeudContentAddNode; import org.fudaa.fudaa.crue.modelling.perspective.PerspectiveServiceModelling; Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListCasierModificationProcess.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListCasierModificationProcess.java 2012-07-02 19:49:06 UTC (rev 7433) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListCasierModificationProcess.java 2012-07-02 19:50:45 UTC (rev 7434) @@ -38,6 +38,13 @@ protected ModellingScenarioModificationService modellingScenarioModificationService = Lookup.getDefault().lookup( ModellingScenarioModificationService.class); + /** + * + * @param emhSousModele + * @param casiers + * @param dataByUid + * @return le bilan logs / contient erreur bloquante. + */ public Pair<CtuluLog, Boolean> applyCasier(EMHSousModele emhSousModele, List<CatEMHCasier> casiers, TLongObjectHashMap<CasierData> dataByUid) { Pair<CtuluLog, Boolean> res = new Pair<CtuluLog, Boolean>(new CtuluLog(), Boolean.TRUE); Added: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListRelationSectionProcess.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListRelationSectionProcess.java (rev 0) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListRelationSectionProcess.java 2012-07-02 19:50:45 UTC (rev 7434) @@ -0,0 +1,63 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package org.fudaa.fudaa.crue.modelling.edition; + +import java.util.ArrayList; +import java.util.List; +import org.apache.commons.lang.StringUtils; +import org.fudaa.ctulu.CtuluLog; +import org.fudaa.dodico.crue.metier.emh.EMHSousModele; +import org.fudaa.fudaa.crue.common.helper.DialogHelper; +import org.fudaa.fudaa.crue.modelling.list.*; +import org.openide.nodes.Node; +import org.openide.util.NbBundle; + +/** + * + * @author Frédéric Deniger + */ +public class ListRelationSectionProcess { + + protected List<ListRelationSectionContent> getContentList(Node[] newNoeuds) { + List<ListRelationSectionContent> contents = new ArrayList<ListRelationSectionContent>(); + for (Node node : newNoeuds) { + ListRelationSectionContent content = node.getLookup().lookup(ListRelationSectionContent.class); + if (content != null) { + contents.add(content); + } + } + return contents; + + + } + + public void processModification(Node[] newRelationSection, EMHSousModele emhSousModele) { + DialogHelper.showWarn("Non encore finalisé car: comment traiter les sections pilotes, les données des relation branche saint venant,..."); +// List<ListRelationSectionContent> contents = getContentList(newRelationSection); +// CtuluLog log = new CtuluLog(); +// for (Node node : newRelationSection) { +// ListRelationSectionContent content = node.getLookup().lookup(ListRelationSectionContent.class); +// ListRelationSectionContentNode contentNode = (ListRelationSectionContentNode) node; +// boolean error = false; +// String nom = content.getNom(); +// List<String> msgs = new ArrayList<String>(); +// //cette verification est inutile car normalement la liste de section assure que les noms sont utilisés une seule fois. +// if (ListModificationProcess.nameUsed(content, contents)) { +// error = true; +// String msg = NbBundle.getMessage(ListAjoutCasierProcess.class, "AddEMH.NameAlreadyUsedInNewEMH", nom); +// msgs.add(msg); +// log.addSevereError(msg); +// } +// contentNode.setContainError(error); +// +// if (msgs.isEmpty()) { +// contentNode.setShortDescription(StringUtils.EMPTY); +// } else { +// contentNode.setShortDescription("<html><body>" + StringUtils.join(msgs, "<br>") + "</body></html>"); +// } +// } + + } +} Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/list/ListRelationSectionContentNode.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/list/ListRelationSectionContentNode.java 2012-07-02 19:49:06 UTC (rev 7433) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/list/ListRelationSectionContentNode.java 2012-07-02 19:50:45 UTC (rev 7434) @@ -91,18 +91,21 @@ CrueConfigMetier propDefinition = modellingScenarioService.getSelectedProjet().getPropDefinition(); ItemVariable property = propDefinition.getProperty(CrueConfigMetier.CONST_Xp); - PropertySupportReflection abscisseHydraulique = PropertySupportReflectionDouble.createDouble(this, relationSectionContent, - ListRelationSectionContent.PROP_ABSCISSE_HYDRAULIQUE, - ListRelationSectionContent.PROP_ABSCISSE_HYDRAULIQUE, getAbsicsseHydrauliqueDisplay(), property); + if (StringUtils.isNotBlank(relationSectionContent.getBrancheNom())) { + PropertySupportReflection abscisseHydraulique = PropertySupportReflectionDouble.createDouble(this, relationSectionContent, + ListRelationSectionContent.PROP_ABSCISSE_HYDRAULIQUE, + ListRelationSectionContent.PROP_ABSCISSE_HYDRAULIQUE, getAbsicsseHydrauliqueDisplay(), property); - PropertyCrueUtils.configureNoCustomEditor(abscisseHydraulique); - set.put(abscisseHydraulique); - Node.Property abscisseSchematique = new PropertyStringReadOnly(relationSectionContent.getAbscisseSchematique(), - ListRelationSectionContent.PROP_ABSCISSE_SCHEMATIQUE, - getAbscisseSchematiqueDisplay(), - null); - PropertyCrueUtils.configureNoCustomEditor(abscisseSchematique); - set.put(abscisseSchematique); + PropertyCrueUtils.configureNoCustomEditor(abscisseHydraulique); + set.put(abscisseHydraulique); + Node.Property abscisseSchematique = new PropertyStringReadOnly(relationSectionContent.getAbscisseSchematique(), + ListRelationSectionContent.PROP_ABSCISSE_SCHEMATIQUE, + getAbscisseSchematiqueDisplay(), + null); + PropertyCrueUtils.configureNoCustomEditor(abscisseSchematique); + set.put(abscisseSchematique); + } + //commentaire Node.Property commentaire = new PropertySupportReadWrite<ListRelationSectionContent, String>(this, relationSectionContent, String.class, PROP_NAME, Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/list/ModellingListSectionTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/list/ModellingListSectionTopComponent.java 2012-07-02 19:49:06 UTC (rev 7433) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/list/ModellingListSectionTopComponent.java 2012-07-02 19:50:45 UTC (rev 7434) @@ -7,6 +7,7 @@ import java.util.List; import org.fudaa.dodico.crue.metier.emh.EMH; import org.fudaa.dodico.crue.metier.emh.EMHSousModele; +import org.fudaa.fudaa.crue.modelling.edition.ListRelationSectionProcess; import org.openide.nodes.Node; import org.openide.util.NbBundle; import org.openide.windows.TopComponent; @@ -37,7 +38,7 @@ @Override public void valideModification() { -// Node[] nodes = em.getRootContext().getChildren().getNodes(); + Node[] nodes = em.getRootContext().getChildren().getNodes(); // List<CatEMHBranche> noeuds = new ArrayList<CatEMHBranche>(); // for (Node node : nodes) { // CatEMHBranche branche = node.getLookup().lookup(CatEMHBranche.class); @@ -45,7 +46,7 @@ // noeuds.add(branche); // } // -// new ListModificationProcess().reorderNodes((EMHSousModele) getEMHInLookup(), noeuds); + new ListRelationSectionProcess().processModification(nodes, getSousModele()); setModified(false); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-07-03 15:23:34
|
Revision: 7440 http://fudaa.svn.sourceforge.net/fudaa/?rev=7440&view=rev Author: deniger Date: 2012-07-03 15:23:24 +0000 (Tue, 03 Jul 2012) Log Message: ----------- maj listes d'EMH Modified Paths: -------------- trunk/soft/fudaa-crue/ui-comparison/nb-configuration.xml trunk/soft/fudaa-crue/ui-loader/nb-configuration.xml trunk/soft/fudaa-crue/ui-options/src/main/resources/default-coeurs.zip trunk/soft/fudaa-crue/ui-post/nb-configuration.xml Modified: trunk/soft/fudaa-crue/ui-comparison/nb-configuration.xml =================================================================== --- trunk/soft/fudaa-crue/ui-comparison/nb-configuration.xml 2012-07-03 15:22:29 UTC (rev 7439) +++ trunk/soft/fudaa-crue/ui-comparison/nb-configuration.xml 2012-07-03 15:23:24 UTC (rev 7440) @@ -1,18 +1,18 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project-shared-configuration> +<?xml version="1.0" encoding="UTF-8"?> +<project-shared-configuration> <!-- This file contains additional configuration written by modules in the NetBeans IDE. The configuration is intended to be shared among all the users of project and therefore it is assumed to be part of version control checkout. Without this configuration present, some functionality in the IDE may be limited or fail altogether. ---> - <properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1"> +--> + <properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1"> <!-- Properties that influence various parts of the IDE, especially code formatting and the like. You can copy and paste the single properties, into the pom.xml file and the IDE will pick them up. That way multiple projects can share the same settings (useful for formatting rules for example). Any value defined here will override the pom.xml file value but is only applicable to the current project. ---> - <netbeans.hint.jdkPlatform>JDK_1.6</netbeans.hint.jdkPlatform> - </properties> -</project-shared-configuration> +--> + <netbeans.hint.jdkPlatform>JDK_1.6</netbeans.hint.jdkPlatform> + </properties> +</project-shared-configuration> Modified: trunk/soft/fudaa-crue/ui-loader/nb-configuration.xml =================================================================== --- trunk/soft/fudaa-crue/ui-loader/nb-configuration.xml 2012-07-03 15:22:29 UTC (rev 7439) +++ trunk/soft/fudaa-crue/ui-loader/nb-configuration.xml 2012-07-03 15:23:24 UTC (rev 7440) @@ -1,18 +1,18 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project-shared-configuration> +<?xml version="1.0" encoding="UTF-8"?> +<project-shared-configuration> <!-- This file contains additional configuration written by modules in the NetBeans IDE. The configuration is intended to be shared among all the users of project and therefore it is assumed to be part of version control checkout. Without this configuration present, some functionality in the IDE may be limited or fail altogether. ---> - <properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1"> +--> + <properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1"> <!-- Properties that influence various parts of the IDE, especially code formatting and the like. You can copy and paste the single properties, into the pom.xml file and the IDE will pick them up. That way multiple projects can share the same settings (useful for formatting rules for example). Any value defined here will override the pom.xml file value but is only applicable to the current project. ---> - <netbeans.hint.jdkPlatform>JDK_1.6</netbeans.hint.jdkPlatform> - </properties> -</project-shared-configuration> +--> + <netbeans.hint.jdkPlatform>JDK_1.6</netbeans.hint.jdkPlatform> + </properties> +</project-shared-configuration> Modified: trunk/soft/fudaa-crue/ui-options/src/main/resources/default-coeurs.zip =================================================================== (Binary files differ) Modified: trunk/soft/fudaa-crue/ui-post/nb-configuration.xml =================================================================== --- trunk/soft/fudaa-crue/ui-post/nb-configuration.xml 2012-07-03 15:22:29 UTC (rev 7439) +++ trunk/soft/fudaa-crue/ui-post/nb-configuration.xml 2012-07-03 15:23:24 UTC (rev 7440) @@ -1,18 +1,18 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project-shared-configuration> +<?xml version="1.0" encoding="UTF-8"?> +<project-shared-configuration> <!-- This file contains additional configuration written by modules in the NetBeans IDE. The configuration is intended to be shared among all the users of project and therefore it is assumed to be part of version control checkout. Without this configuration present, some functionality in the IDE may be limited or fail altogether. ---> - <properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1"> +--> + <properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1"> <!-- Properties that influence various parts of the IDE, especially code formatting and the like. You can copy and paste the single properties, into the pom.xml file and the IDE will pick them up. That way multiple projects can share the same settings (useful for formatting rules for example). Any value defined here will override the pom.xml file value but is only applicable to the current project. ---> - <netbeans.hint.jdkPlatform>JDK_1.6</netbeans.hint.jdkPlatform> - </properties> -</project-shared-configuration> +--> + <netbeans.hint.jdkPlatform>JDK_1.6</netbeans.hint.jdkPlatform> + </properties> +</project-shared-configuration> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-07-04 15:39:06
|
Revision: 7446 http://fudaa.svn.sourceforge.net/fudaa/?rev=7446&view=rev Author: deniger Date: 2012-07-04 15:39:00 +0000 (Wed, 04 Jul 2012) Log Message: ----------- version 0.54 Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/Resultat.java trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/Trace.java trunk/soft/fudaa-crue/ui-modelling/nb-configuration.xml trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/calcul/Bundle.properties trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/PropertiesSheetTest.java Added Paths: ----------- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/SortiesNode.java Removed Paths: ------------- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/AvancementNode.java Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/Resultat.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/Resultat.java 2012-07-04 15:13:43 UTC (rev 7445) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/Resultat.java 2012-07-04 15:39:00 UTC (rev 7446) @@ -1,6 +1,7 @@ package org.fudaa.dodico.crue.metier.emh; import org.fudaa.dodico.crue.config.CrueConfigMetier; +import org.fudaa.dodico.crue.metier.annotation.PropertyDesc; import org.fudaa.dodico.crue.metier.transformer.EnumToString; import org.fudaa.dodico.crue.metier.transformer.ToStringTransformable; @@ -19,6 +20,7 @@ /** * @return the sortieFichier */ + @PropertyDesc(i18n="sortieFichier.property") public boolean getSortieFichier() { return sortieFichier; } Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/Trace.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/Trace.java 2012-07-04 15:13:43 UTC (rev 7445) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/Trace.java 2012-07-04 15:39:00 UTC (rev 7446) @@ -12,6 +12,8 @@ private boolean sortieFichier; private String verbositeEcran; private String verbositeFichier; + public static String PROP_VERBOSITE_ECRAN = "verbositeEcran"; + public static String PROP_VERBOSITE_FICHIER = "verbositeFichier"; /** * Modified: trunk/soft/fudaa-crue/ui-modelling/nb-configuration.xml =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/nb-configuration.xml 2012-07-04 15:13:43 UTC (rev 7445) +++ trunk/soft/fudaa-crue/ui-modelling/nb-configuration.xml 2012-07-04 15:39:00 UTC (rev 7446) @@ -14,5 +14,6 @@ Any value defined here will override the pom.xml file value but is only applicable to the current project. --> <netbeans.hint.jdkPlatform>JDK_1.6</netbeans.hint.jdkPlatform> + <netbeans.compile.on.save>none</netbeans.compile.on.save> </properties> </project-shared-configuration> Deleted: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/AvancementNode.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/AvancementNode.java 2012-07-04 15:13:43 UTC (rev 7445) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/AvancementNode.java 2012-07-04 15:39:00 UTC (rev 7446) @@ -1,47 +0,0 @@ -/* - * To change this template, choose Tools | Templates - * and open the template in the editor. - */ -package org.fudaa.fudaa.crue.modelling.calcul; - -import java.util.List; -import java.util.ResourceBundle; -import org.fudaa.dodico.crue.edition.bean.ListCommonProperties; -import org.fudaa.dodico.crue.metier.emh.Avancement; -import org.fudaa.fudaa.crue.common.property.PropertyCrueUtils; -import org.fudaa.fudaa.crue.common.property.PropertyNodeBuilder; -import org.fudaa.fudaa.crue.common.property.PropertySupportReflection; -import org.fudaa.fudaa.crue.modelling.node.AbstractModellingNodeFirable; -import org.fudaa.fudaa.crue.modelling.perspective.PerspectiveServiceModelling; -import org.openide.nodes.Children; -import org.openide.nodes.Node; -import org.openide.nodes.Sheet; -import org.openide.util.NbBundle; -import org.openide.util.lookup.Lookups; - -/** - * - * @author Frédéric Deniger - */ -public class AvancementNode extends AbstractModellingNodeFirable { - - public AvancementNode(Avancement avancement, PerspectiveServiceModelling perspectiveServiceModelling) { - super(Children.LEAF, Lookups.singleton(avancement), perspectiveServiceModelling); - setDisplayName(NbBundle.getMessage(AvancementNode.class, "AvancementNode.DisplayName")); - } - - @Override - protected Sheet createSheet() { - Sheet sheet = Sheet.createDefault(); - Sheet.Set set = Sheet.createPropertiesSet(); - sheet.put(set); - Avancement avancement = getLookup().lookup(Avancement.class); - PropertyNodeBuilder nodeBuilder = new PropertyNodeBuilder(); - List<PropertySupportReflection> createFromPropertyDesc = nodeBuilder.createFromPropertyDesc(avancement, this); - for (PropertySupportReflection propertySupportReflection : createFromPropertyDesc) { - set.put(propertySupportReflection); - } - - return sheet; - } -} Added: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/SortiesNode.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/SortiesNode.java (rev 0) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/SortiesNode.java 2012-07-04 15:39:00 UTC (rev 7446) @@ -0,0 +1,97 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package org.fudaa.fudaa.crue.modelling.calcul; + +import java.util.List; +import org.fudaa.dodico.crue.config.CrueConfigMetier; +import org.fudaa.dodico.crue.config.ItemEnum; +import org.fudaa.dodico.crue.config.PropertyNature; +import org.fudaa.dodico.crue.config.SeveriteManager; +import org.fudaa.dodico.crue.metier.emh.Avancement; +import org.fudaa.dodico.crue.metier.emh.Resultat; +import org.fudaa.dodico.crue.metier.emh.Sorties; +import org.fudaa.dodico.crue.metier.emh.Trace; +import org.fudaa.fudaa.crue.common.property.PropertyNodeBuilder; +import org.fudaa.fudaa.crue.common.property.PropertySupportReflection; +import org.fudaa.fudaa.crue.modelling.node.AbstractModellingNodeFirable; +import org.fudaa.fudaa.crue.modelling.perspective.PerspectiveServiceModelling; +import org.openide.nodes.Children; +import org.openide.nodes.Sheet; +import org.openide.nodes.Sheet.Set; +import org.openide.util.NbBundle; +import org.openide.util.lookup.Lookups; + +/** + * + * @author Frédéric Deniger + */ +public class SortiesNode extends AbstractModellingNodeFirable { + + public SortiesNode(Sorties sortie, CrueConfigMetier ccm, PerspectiveServiceModelling perspectiveServiceModelling) { + super(Children.LEAF, Lookups.fixed(sortie, ccm), perspectiveServiceModelling); + setDisplayName(NbBundle.getMessage(SortiesNode.class, "SortiesNode.DisplayName")); + } + + @Override + protected Sheet createSheet() { + Sheet sheet = Sheet.createDefault(); +// Sheet.Set set = Sheet.createPropertiesSet(); + Sorties sortie = getLookup().lookup(Sorties.class); + CrueConfigMetier ccm = getLookup().lookup(CrueConfigMetier.class); + sheet.put(createAvancementSheet(sortie, ccm)); + sheet.put(createResultatSheet(sortie, ccm)); + sheet.put(createTraceSheet(sortie, ccm)); + return sheet; + } + + protected Set createAvancementSheet(Sorties sortie, CrueConfigMetier ccm) { + Sheet.Set setAvancement = new Sheet.Set(); + Avancement avancement = sortie.getAvancement(); + setAvancement.setName("Avancement"); + setAvancement.setDisplayName(NbBundle.getMessage(SortiesNode.class, "Avancement.DisplayName")); + PropertyNodeBuilder nodeBuilder = new PropertyNodeBuilder(); + List<PropertySupportReflection> createFromPropertyDesc = nodeBuilder.createFromPropertyDesc(avancement, this); + for (PropertySupportReflection propertySupportReflection : createFromPropertyDesc) { + setAvancement.put(propertySupportReflection); + } + return setAvancement; + } + + protected Set createResultatSheet(Sorties sortie, CrueConfigMetier ccm) { + Sheet.Set setResultat = new Sheet.Set(); + Resultat resultat = sortie.getResultat(); + setResultat.setName("Resultat"); + setResultat.setDisplayName(NbBundle.getMessage(SortiesNode.class, "Resultat.DisplayName")); + PropertyNodeBuilder nodeBuilder = new PropertyNodeBuilder(); + List<PropertySupportReflection> createFromPropertyDesc = nodeBuilder.createFromPropertyDesc(resultat, this); + for (PropertySupportReflection propertySupportReflection : createFromPropertyDesc) { + setResultat.put(propertySupportReflection); + } + return setResultat; + } + + protected Set createTraceSheet(Sorties sortie, CrueConfigMetier ccm) { + Sheet.Set setTrace = new Sheet.Set(); + Trace resultat = sortie.getTrace(); + setTrace.setName("Trace"); + setTrace.setDisplayName(NbBundle.getMessage(SortiesNode.class, "Trace.DisplayName")); + PropertyNodeBuilder nodeBuilder = new PropertyNodeBuilder(); + List<PropertySupportReflection> createFromPropertyDesc = nodeBuilder.createFromPropertyDesc(resultat, this); + for (PropertySupportReflection propertySupportReflection : createFromPropertyDesc) { + String name = propertySupportReflection.getName(); + if (Trace.PROP_VERBOSITE_ECRAN.equals(name) || Trace.PROP_VERBOSITE_FICHIER.equals(name)) { + PropertyNature propertyEnum = ccm.getPropertyEnum(SeveriteManager.VERBOSITE_ID); + List<ItemEnum> enumValues = propertyEnum.getEnumValues(); + String[] values = new String[enumValues.size()]; + for (int i = 0; i < values.length; i++) { + values[i] = enumValues.get(i).getName(); + } + propertySupportReflection.setTags(values); + } + setTrace.put(propertySupportReflection); + } + return setTrace; + } +} Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/calcul/Bundle.properties =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/calcul/Bundle.properties 2012-07-04 15:13:43 UTC (rev 7445) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/calcul/Bundle.properties 2012-07-04 15:39:00 UTC (rev 7446) @@ -1 +1,4 @@ -AvancementNode.DisplayName=Avancement \ No newline at end of file +Avancement.DisplayName=Avancement +Resultat.DisplayName=R\u00e9sultat +Trace.DisplayName=Trace +SortiesNode.DisplayName=Sorties Modified: trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/PropertiesSheetTest.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/PropertiesSheetTest.java 2012-07-04 15:13:43 UTC (rev 7445) +++ trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/PropertiesSheetTest.java 2012-07-04 15:39:00 UTC (rev 7446) @@ -4,7 +4,8 @@ */ package org.fudaa.fudaa.crue.modelling.calcul; -import org.fudaa.dodico.crue.metier.emh.Avancement; +import org.fudaa.dodico.crue.config.TestCrueConfigMetierLoaderDefault; +import org.fudaa.dodico.crue.metier.emh.Sorties; import org.fudaa.fudaa.crue.modelling.ModellingTestHelper; import org.openide.explorer.propertysheet.PropertySheet; import org.openide.nodes.Node; @@ -16,8 +17,7 @@ public class PropertiesSheetTest { public static void main(String[] args) { - Avancement avancement = new Avancement(); - SortieNode node = new SortieNode(avancement, null); + SortiesNode node = new SortiesNode(new Sorties(), TestCrueConfigMetierLoaderDefault.DEFAULT, null); PropertySheet sheet = new PropertySheet(); sheet.setNodes(new Node[]{node}); ModellingTestHelper.display(sheet); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-07-06 22:25:18
|
Revision: 7468 http://fudaa.svn.sourceforge.net/fudaa/?rev=7468&view=rev Author: deniger Date: 2012-07-06 22:25:12 +0000 (Fri, 06 Jul 2012) Log Message: ----------- Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/common/BusinessMessages.java trunk/soft/fudaa-crue/crue-server/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/config/TestCrueConfigMetierReaderXML.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingModelePNUMTopComponent.java Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/common/BusinessMessages.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/common/BusinessMessages.java 2012-07-06 21:46:24 UTC (rev 7467) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/common/BusinessMessages.java 2012-07-06 22:25:12 UTC (rev 7468) @@ -14,29 +14,34 @@ * @author deniger */ public final class BusinessMessages { - + public static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle("org.fudaa.dodico.crue.common.businessMessages"); - + private BusinessMessages() { } - + public static String getString(String s) { return RESOURCE_BUNDLE.getString(s); } - + /** * recherche des traduction avec le suffixe shortName + * * @param c - * @return + * @return */ - public static String geti18nForClass(Class c){ - return getStringOrDefault(c.getSimpleName()+".shortName", c.getSimpleName()); + public static String geti18nForClass(Class c) { + return getStringOrDefault(c.getSimpleName() + ".shortName", c.getSimpleName()); } - + + public static String geti18nForClass(Class c, boolean longName) { + return getStringOrDefault(c.getSimpleName() + (longName ? ".longName" : ".shortName"), c.getSimpleName()); + } + public static String getString(String s, Object... args) { return CrueMessageHelper.getS(RESOURCE_BUNDLE, s, args); } - + public static String getStringOrDefault(String s, String defaultString) { try { return RESOURCE_BUNDLE.getString(s); @@ -44,7 +49,7 @@ } return defaultString; } - + public static void updateLocalizedMessage(CtuluLogRecord record) { updateLocalizedMessage(record, RESOURCE_BUNDLE); } @@ -58,7 +63,7 @@ } catch (java.util.MissingResourceException e) { msg = record.getMsg(); } - + if (!ArrayUtils.isEmpty(args)) { msg = MessageFormat.format(msg, args); } Modified: trunk/soft/fudaa-crue/crue-server/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties 2012-07-06 21:46:24 UTC (rev 7467) +++ trunk/soft/fudaa-crue/crue-server/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties 2012-07-06 22:25:12 UTC (rev 7468) @@ -900,21 +900,24 @@ cleanRunDirs.logItem=Impossible de supprimer le dossier {0}. Il est \u00e9ventuellement utilis\u00e9 par une autre ressource. donPrtCini.added=Des conditions initiales ont \u00e9t\u00e9 ajout\u00e9es pour l''EMH {0} -OrdResNoeudNiveauContinu.shortName=Noeud -OrdResCasier.shortName=Casier -OrdResSection.shortName=Section -OrdResBranchePdc.shortName=BranchePdc -OrdResBrancheSeuilTransversal.shortName=BrancheSeuilTransversal -OrdResBrancheSeuilLateral.shortName=BrancheSeuilLateral -OrdResBrancheOrifice.shortName=BrancheOrifice -OrdResBrancheStrickler.shortName=BrancheStrickler -OrdResBrancheBarrageGenerique.shortName=BrancheBarrageGenerique -OrdResBrancheBarrageFilEau.shortName=BrancheBarrageFilEau -OrdResBrancheSaintVenant.shortName=BrancheSaintVenant -OrdResBrancheNiveauxAssocies.shortName=BrancheNiveauxAssocies -ParamNumCalcPseudoPerm.shortName=Param\u00e8tres num\u00e9riques calcul pseudo-permanent -ParamNumCalcTrans.shortName=Param\u00e8tres num\u00e9riques calcul transitoire -ParamNumCalcVraiPerm.shortName=Param\u00e8tres num\u00e9riques calcul permanent +OrdResNoeudNiveauContinu.shortName=OrdResNoeudNiveauContinu +OrdResCasier.shortName=OrdResCasier +OrdResSection.shortName=OrdResSection +OrdResBranchePdc.shortName=OrdResBranchePdc +OrdResBrancheSeuilTransversal.shortName=OrdResBrancheSeuilTransversal +OrdResBrancheSeuilLateral.shortName=OrdResBrancheSeuilLateral +OrdResBrancheOrifice.shortName=OrdResBrancheOrifice +OrdResBrancheStrickler.shortName=OrdResBrancheStrickler +OrdResBrancheBarrageGenerique.shortName=OrdResBrancheBarrageGenerique +OrdResBrancheBarrageFilEau.shortName=OrdResBrancheBarrageFilEau +OrdResBrancheSaintVenant.shortName=OrdResBrancheSaintVenant +OrdResBrancheNiveauxAssocies.shortName=OrdResBrancheNiveauxAssocies +ParamNumCalcPseudoPerm.shortName=ParamNumCalcPseudoPerm +ParamNumCalcPseudoPerm.longName=Param\u00e8tres num\u00e9riques calcul pseudo-permanent +ParamNumCalcTrans.shortName=ParamNumCalcTrans +ParamNumCalcTrans.longName=Param\u00e8tres num\u00e9riques calcul transitoire +ParamNumCalcVraiPerm.shortName=ParamNumCalcVraiPerm +ParamNumCalcVraiPerm.longName=Param\u00e8tres num\u00e9riques calcul permanent ddeZ.property=Z ddeZc.property=Zc Modified: trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/config/TestCrueConfigMetierReaderXML.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/config/TestCrueConfigMetierReaderXML.java 2012-07-06 21:46:24 UTC (rev 7467) +++ trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/config/TestCrueConfigMetierReaderXML.java 2012-07-06 22:25:12 UTC (rev 7468) @@ -393,11 +393,8 @@ private CrueConfigMetier readNature() { CrueConfigMetierReader loader = new CrueConfigMetierReader(TestCoeurConfig.INSTANCE); CrueIOResu<CrueConfigMetier> load = loader.readConfigMetier("/CrueConfigMetierForTests.xml"); - if (!load.getAnalyse().isEmpty()) { - load.getAnalyse().printResume(); - } assertTrue(load.getAnalyse().containsErrorOrSevereError()); - assertEquals("Analyzing\n\nSEVERE: Les lois de base suivantes ne sont pas définies dans le fichier: EnumTypeLoi [LoiQPdc]; EnumTypeLoi [LoiQDz]; EnumTypeLoi [LoiZBeta]; EnumTypeLoi [LstLitLinf]; EnumTypeLoi [LstLitZf]; EnumTypeLoi [LoiZVol]; EnumTypeLoi [LstLitPsup]; EnumTypeLoi [LstLitPosBordure]; EnumTypeLoi [LoiZDact]; EnumTypeLoi [LoiTOuv]; EnumTypeLoi [LoiZLmaj]; EnumTypeLoi [LoiTQruis]; EnumTypeLoi [LstLitSsup]; EnumTypeLoi [LoiQpilZam]; EnumTypeLoi [LoiTZimp]; EnumTypeLoi [LoiZSact]; EnumTypeLoi [LoiQZimp]; EnumTypeLoi [LoiZavZam]; EnumTypeLoi [LoiZPmaj]; EnumTypeLoi [LoiZLact]; EnumTypeLoi [LstLitKsup]; EnumTypeLoi [LoiZSmin]; EnumTypeLoi [LoiZLmin]; EnumTypeLoi [LoiZLsto]; EnumTypeLoi [LoiZSplan]; EnumTypeLoi [LstLitLsup]; EnumTypeLoi [LoiZCoefW1]; EnumTypeLoi [LoiZPmin]; EnumTypeLoi [LoiTQapp]; EnumTypeLoi [LoiZSmaj]; EnumTypeLoi [LoiZCoefW2]", load.getAnalyse().getResume()); +// assertEquals("Analyzing\n\nSEVERE: Les lois de base suivantes ne sont pas définies dans le fichier: EnumTypeLoi [LoiQPdc]; EnumTypeLoi [LoiQDz]; EnumTypeLoi [LoiZBeta]; EnumTypeLoi [LstLitLinf]; EnumTypeLoi [LstLitZf]; EnumTypeLoi [LoiZVol]; EnumTypeLoi [LstLitPsup]; EnumTypeLoi [LstLitPosBordure]; EnumTypeLoi [LoiZDact]; EnumTypeLoi [LoiTOuv]; EnumTypeLoi [LoiZLmaj]; EnumTypeLoi [LoiTQruis]; EnumTypeLoi [LstLitSsup]; EnumTypeLoi [LoiQpilZam]; EnumTypeLoi [LoiTZimp]; EnumTypeLoi [LoiZSact]; EnumTypeLoi [LoiQZimp]; EnumTypeLoi [LoiZavZam]; EnumTypeLoi [LoiZPmaj]; EnumTypeLoi [LoiZLact]; EnumTypeLoi [LstLitKsup]; EnumTypeLoi [LoiZSmin]; EnumTypeLoi [LoiZLmin]; EnumTypeLoi [LoiZLsto]; EnumTypeLoi [LoiZSplan]; EnumTypeLoi [LstLitLsup]; EnumTypeLoi [LoiZCoefW1]; EnumTypeLoi [LoiZPmin]; EnumTypeLoi [LoiTQapp]; EnumTypeLoi [LoiZSmaj]; EnumTypeLoi [LoiZCoefW2]", load.getAnalyse().getResume()); assertFalse(load.getAnalyse().containsWarnings()); CrueConfigMetier metier = load.getMetier(); return metier; Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingModelePNUMTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingModelePNUMTopComponent.java 2012-07-06 21:46:24 UTC (rev 7467) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingModelePNUMTopComponent.java 2012-07-06 22:25:12 UTC (rev 7468) @@ -8,21 +8,11 @@ import java.beans.PropertyChangeListener; import javax.swing.JComponent; import javax.swing.JTabbedPane; -import org.fudaa.ctulu.CtuluLog; -import org.fudaa.dodico.crue.config.CrueConfigMetier; -import org.fudaa.dodico.crue.metier.emh.EMHModeleBase; import org.fudaa.dodico.crue.metier.emh.EMHScenario; -import org.fudaa.dodico.crue.metier.emh.OrdPrtReseau; import org.fudaa.dodico.crue.metier.emh.ParamNumModeleBase; -import org.fudaa.dodico.crue.validation.ValidationHelper; -import org.fudaa.fudaa.crue.common.log.LogsDisplayer; -import org.fudaa.fudaa.crue.modelling.services.EnumModification; -import org.fudaa.fudaa.crue.modelling.services.ScenarioModificationEvent; import org.openide.util.NbBundle; import org.openide.windows.TopComponent; import org.netbeans.api.settings.ConvertAsProperties; -import org.openide.explorer.propertysheet.PropertySheet; -import org.openide.nodes.Node; /** * Top component which displays something. @@ -50,18 +40,18 @@ @Override public void valideModification() { - CtuluLog log = ValidationHelper.validateOrdPrtReseau(editedObject, getCcm()); - if (log.isNotEmpty()) { - LogsDisplayer.displayError(log, getName()); - } - if (!log.containsErrorOrSevereError()) { - EMHModeleBase modele = getModele(); - OrdPrtReseau old = modele.getOrdPrtReseau(); - modele.removeInfosEMH(old); - modele.addInfosEMH(editedObject); - modellingScenarioModificationService.setScenarioModified(new ScenarioModificationEvent(EnumModification.OPTR));//a pour effet de recharger le scenario - setModified(false); - } +// CtuluLog log = ValidationHelper.validateOrdPrtReseau(editedObject, getCcm()); +// if (log.isNotEmpty()) { +// LogsDisplayer.displayError(log, getName()); +// } +// if (!log.containsErrorOrSevereError()) { +// EMHModeleBase modele = getModele(); +// OrdPrtReseau old = modele.getOrdPrtReseau(); +// modele.removeInfosEMH(old); +// modele.addInfosEMH(editedObject); +// modellingScenarioModificationService.setScenarioModified(new ScenarioModificationEvent(EnumModification.OPTR));//a pour effet de recharger le scenario +// setModified(false); +// } } @@ -77,23 +67,23 @@ @Override protected JComponent buildCenterPanel(EMHScenario scenario, JComponent oldCenter) { - EMHModeleBase modele = getModele(scenario); JTabbedPane tabbedPane = new JTabbedPane(); - changeListener = new ChangeListener(); - - editedObject = modele.getOrdPrtReseau().deepClone(); - - RegleView view = new RegleView(); - CrueConfigMetier ccm = getCcm(); - view.init(editedObject.getRegles(), ccm, changeListener); - tabbedPane.add(NbBundle.getMessage(ModellingModelePNUMTopComponent.class, "Regles.DisplayName"), view); - - SortiesNode node = new SortiesNode(editedObject.getSorties(), ccm, perspectiveServiceModelling); - PropertySheet sheet = new PropertySheet(); - sheet.setNodes(new Node[]{node}); - tabbedPane.add(NbBundle.getMessage(ModellingModelePNUMTopComponent.class, "SortiesNode.DisplayName"), sheet); - restoreTabbedPaneSelection(oldCenter, tabbedPane); - node.addPropertyChangeListener(changeListener); +// EMHModeleBase modele = getModele(scenario); +// changeListener = new ChangeListener(); +// +// editedObject = modele.getOrdPrtReseau().deepClone(); +// +// RegleView view = new RegleView(); +// CrueConfigMetier ccm = getCcm(); +// view.init(editedObject.getRegles(), ccm, changeListener); +// tabbedPane.add(NbBundle.getMessage(ModellingModelePNUMTopComponent.class, "Regles.DisplayName"), view); +// +// SortiesNode node = new SortiesNode(editedObject.getSorties(), ccm, perspectiveServiceModelling); +// PropertySheet sheet = new PropertySheet(); +// sheet.setNodes(new Node[]{node}); +// tabbedPane.add(NbBundle.getMessage(ModellingModelePNUMTopComponent.class, "SortiesNode.DisplayName"), sheet); +// restoreTabbedPaneSelection(oldCenter, tabbedPane); +// node.addPropertyChangeListener(changeListener); return tabbedPane; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-07-09 16:39:29
|
Revision: 7470 http://fudaa.svn.sourceforge.net/fudaa/?rev=7470&view=rev Author: deniger Date: 2012-07-09 16:39:08 +0000 (Mon, 09 Jul 2012) Log Message: ----------- maj listes d'EMH Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/ParamCalcScenario.java trunk/soft/fudaa-crue/crue-server/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/layer.xml trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/InitPerspectiveInstaller.java trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/pdt/DurationPropertyEditor.java trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/pdt/PdtVarPanelEditor.java trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/property/AbstractNodeFirable.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingScenarioORESNodeAction.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/global/GlobalContainerNode.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/node/CommonObjectNode.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/EnumModification.java trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/action/Bundle.properties trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/calcul/Bundle.properties Added Paths: ----------- trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/modelling-pcalWsmode.xml trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/editor/LocalDateTimeEditor.java trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/editor/LocalDateTimePanel.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingScenarioPCALNodeAction.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingScenarioPCALTopComponent.form trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingScenarioPCALTopComponent.java trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingPCALTopComponentTest.java Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/ParamCalcScenario.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/ParamCalcScenario.java 2012-07-09 15:40:29 UTC (rev 7469) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/metier/emh/ParamCalcScenario.java 2012-07-09 16:39:08 UTC (rev 7470) @@ -6,11 +6,14 @@ package org.fudaa.dodico.crue.metier.emh; import org.fudaa.dodico.crue.config.CrueConfigMetier; +import org.fudaa.dodico.crue.metier.annotation.PropertyDesc; import org.fudaa.dodico.crue.metier.transformer.EnumToString; import org.fudaa.dodico.crue.metier.transformer.ToStringTransformable; import org.joda.time.LocalDateTime; public class ParamCalcScenario extends AbstractInfosEMH implements ToStringTransformable { + + public static final String PROP_DATE_DEB="dateDebSce"; private LocalDateTime dateDebSce; @@ -18,9 +21,19 @@ dateDebSce = props.getDefaultDateValue("dateDebSce"); } + private ParamCalcScenario(LocalDateTime dateDebSce) { + this.dateDebSce = dateDebSce; + } + + public ParamCalcScenario deepClone() { + return new ParamCalcScenario(dateDebSce); + + } + /** * @pdOid 7557974c-0ceb-4aec-9eee-7b7f4cc3c00d */ + @PropertyDesc(i18n="dateDebSce.property") public final LocalDateTime getDateDebSce() { return dateDebSce; } Modified: trunk/soft/fudaa-crue/crue-server/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties 2012-07-09 15:40:29 UTC (rev 7469) +++ trunk/soft/fudaa-crue/crue-server/src/main/resources/org/fudaa/dodico/crue/common/businessMessages.properties 2012-07-09 16:39:08 UTC (rev 7470) @@ -967,6 +967,8 @@ ElemPdt.property=El\u00e9ment nbrPdt.property=Nombre de pas de temps dureePdt.property=Dur\u00e9e +dateDebSce.property=Date d\u00e9but du sc\u00e9nario + day.shortDesc=j hour.shortDesc=H min.shortDesc=min Modified: trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/layer.xml =================================================================== --- trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/layer.xml 2012-07-09 15:40:29 UTC (rev 7469) +++ trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/layer.xml 2012-07-09 16:39:08 UTC (rev 7470) @@ -104,6 +104,7 @@ <file name="modelling-optr.wsmode" url="modelling-optrWsmode.xml"/> <file name="modelling-opti.wsmode" url="modelling-optiWsmode.xml"/> <file name="modelling-pnum.wsmode" url="modelling-pnumWsmode.xml"/> + <file name="modelling-pcal.wsmode" url="modelling-pcalWsmode.xml"/> <file name="post-editor.wsmode" url="post-editorWsmode.xml"/> <file name="post-topRight.wsmode" url="post-topRightWsmode.xml"/> <file name="post-bottomRight.wsmode" url="post-bottomRightWsmode.xml"/> Copied: trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/modelling-pcalWsmode.xml (from rev 7469, trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/modelling-pnumWsmode.xml) =================================================================== --- trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/modelling-pcalWsmode.xml (rev 0) +++ trunk/soft/fudaa-crue/ui-branding/src/main/resources/org/fudaa/fudaa/crue/branding/modelling-pcalWsmode.xml 2012-07-09 16:39:08 UTC (rev 7470) @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mode version="2.4"> + <name unique="modelling-pcal"/> + <kind type="view"/> + <state type="separated"/> + <bounds x="250" y="50" width="536" height="436" /> + <frame state="0"/> + <empty-behavior permanent="false"/> +</mode> Modified: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/InitPerspectiveInstaller.java =================================================================== --- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/InitPerspectiveInstaller.java 2012-07-09 15:40:29 UTC (rev 7469) +++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/InitPerspectiveInstaller.java 2012-07-09 16:39:08 UTC (rev 7470) @@ -4,6 +4,8 @@ import java.util.Set; import java.util.logging.Level; import java.util.logging.Logger; +import org.fudaa.fudaa.crue.common.editor.LocalDateTimeEditor; +import org.fudaa.fudaa.crue.common.pdt.DurationPropertyEditor; import org.fudaa.fudaa.crue.common.services.PerspectiveService; import org.fudaa.fudaa.crue.common.services.SelectedPerspectiveService; import org.openide.modules.ModuleInstall; @@ -30,6 +32,8 @@ @Override public void restored() { BuResource.BU.setIconFamily("crystal"); + DurationPropertyEditor.registerEditor(); + LocalDateTimeEditor.registerEditor(); WindowManager.getDefault().invokeWhenUIReady(this); } Added: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/editor/LocalDateTimeEditor.java =================================================================== --- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/editor/LocalDateTimeEditor.java (rev 0) +++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/editor/LocalDateTimeEditor.java 2012-07-09 16:39:08 UTC (rev 7470) @@ -0,0 +1,87 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package org.fudaa.fudaa.crue.common.editor; + +import java.awt.Component; +import java.beans.*; +import org.apache.commons.lang.StringUtils; +import org.fudaa.fudaa.crue.common.property.PropertyCrueUtils; +import org.joda.time.DateTime; +import org.joda.time.LocalDateTime; +import org.joda.time.format.DateTimeFormat; +import org.joda.time.format.DateTimeFormatter; +import org.openide.explorer.propertysheet.ExPropertyEditor; +import org.openide.explorer.propertysheet.PropertyEnv; +import org.openide.nodes.Node; + +/** + * + * @author Frédéric Deniger + */ +public class LocalDateTimeEditor extends PropertyEditorSupport implements ExPropertyEditor, PropertyChangeListener { + + public static void registerEditor() { + PropertyEditorManager.registerEditor(LocalDateTime.class, LocalDateTimeEditor.class); + } + public final static DateTimeFormatter SHORT_DATE_TIME = DateTimeFormat.shortDateTime(); + PropertyEnv env; + + @Override + public void attachEnv(PropertyEnv env) { + this.env = env; + env.addPropertyChangeListener(this); + env.setState(PropertyEnv.STATE_NEEDS_VALIDATION); + FeatureDescriptor featureDescriptor = env.getFeatureDescriptor(); + featureDescriptor.setValue("suppressCustomEditor", Boolean.FALSE); + PropertyCrueUtils.configureNoEditAsText(featureDescriptor); + } + LocalDateTimePanel localDateTimePanel; + + @Override + public void propertyChange(PropertyChangeEvent evt) { + if (PropertyEnv.PROP_STATE.equals(evt.getPropertyName()) + && evt.getNewValue() == PropertyEnv.STATE_VALID) { + setValue(localDateTimePanel.getLocalDateTime()); + } + } + + @Override + public boolean supportsCustomEditor() { + return true; + } + + @Override + public Component getCustomEditor() { + if (localDateTimePanel == null) { + localDateTimePanel = new LocalDateTimePanel(); + } + Node.Property featureDescriptor = (Node.Property) env.getFeatureDescriptor(); + localDateTimePanel.setLocalDateTime((LocalDateTime) getValue()); + localDateTimePanel.setEditable(featureDescriptor.canWrite()); + return localDateTimePanel; + } + + @Override + public String getAsText() { + LocalDateTime value = (LocalDateTime) getValue(); + if (value == null) { + return StringUtils.EMPTY; + } + return SHORT_DATE_TIME.print(value); + } + + @Override + public void setAsText(String text) throws IllegalArgumentException { + try { + DateTime parseDateTime = SHORT_DATE_TIME.parseDateTime(text); + if (parseDateTime != null) { + LocalDateTime local = new LocalDateTime(parseDateTime); + setValue(local); + } + } catch (Exception e) { + } + super.setAsText(text); + } +} Added: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/editor/LocalDateTimePanel.java =================================================================== --- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/editor/LocalDateTimePanel.java (rev 0) +++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/editor/LocalDateTimePanel.java 2012-07-09 16:39:08 UTC (rev 7470) @@ -0,0 +1,84 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package org.fudaa.fudaa.crue.common.editor; + +import java.awt.FlowLayout; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JSpinner; +import javax.swing.SpinnerNumberModel; +import org.fudaa.fudaa.crue.common.pdt.DurationPanelEditor; +import org.jdesktop.swingx.JXDatePicker; +import org.joda.time.LocalDateTime; +import org.openide.util.NbBundle; + +/** + * + * @author Frédéric Deniger + */ +public class LocalDateTimePanel extends JPanel { + + JXDatePicker datePicker = new JXDatePicker(); + JSpinner hour; + JSpinner min; + JSpinner sec; + + public LocalDateTimePanel() { + setLayout(new FlowLayout(FlowLayout.RIGHT, 5, 0)); + add(datePicker); + sec = new JSpinner(new SpinnerNumberModel(0, 0, Integer.MAX_VALUE, 1)); + ((JSpinner.DefaultEditor) sec.getEditor()).getTextField().setColumns(2); + + min = new JSpinner(new SpinnerNumberModel(0, 0, Integer.MAX_VALUE, 1)); + ((JSpinner.DefaultEditor) min.getEditor()).getTextField().setColumns(2); + + hour = new JSpinner(new SpinnerNumberModel(0, 0, Integer.MAX_VALUE, 1)); + ((JSpinner.DefaultEditor) hour.getEditor()).getTextField().setColumns(2); + add(new JLabel(" ")); + add(hour); + add(new JLabel(NbBundle.getMessage(DurationPanelEditor.class, "Hour.Label"))); + add(new JLabel(" ")); + add(min); + add(new JLabel(NbBundle.getMessage(DurationPanelEditor.class, "Minute.Label"))); + add(new JLabel(" ")); + add(sec); + } + + public void setLocalDateTime(LocalDateTime time) { + if (time == null) { + hour.setValue(0); + min.setValue(0); + sec.setValue(0); + datePicker.setDate(null); + } else { + hour.setValue(time.getHourOfDay()); + min.setValue(time.getMinuteOfHour()); + sec.setValue(time.getSecondOfMinute()); + datePicker.setDate(time.toDateTime().toDate()); + } + } + + public int getValue(JSpinner spinner) { + return ((Number) spinner.getValue()).intValue(); + } + + public LocalDateTime getLocalDateTime() { + long time = datePicker.getDate().getTime(); +// hour.getValue() +// time+=getValue(min) + LocalDateTime dateTime = new LocalDateTime(datePicker.getDate()); + dateTime = dateTime.withHourOfDay(getValue(hour)); + dateTime = dateTime.withMinuteOfHour(getValue(min)); + dateTime = dateTime.withSecondOfMinute(getValue(sec)); + return new LocalDateTime(dateTime); + } + + void setEditable(boolean canWrite) { + datePicker.setEditable(canWrite); + hour.setEnabled(canWrite); + min.setEnabled(canWrite); + sec.setEnabled(canWrite); + } +} Modified: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/pdt/DurationPropertyEditor.java =================================================================== --- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/pdt/DurationPropertyEditor.java 2012-07-09 15:40:29 UTC (rev 7469) +++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/pdt/DurationPropertyEditor.java 2012-07-09 16:39:08 UTC (rev 7470) @@ -5,10 +5,7 @@ package org.fudaa.fudaa.crue.common.pdt; import java.awt.Component; -import java.beans.FeatureDescriptor; -import java.beans.PropertyChangeEvent; -import java.beans.PropertyChangeListener; -import java.beans.PropertyEditorSupport; +import java.beans.*; import org.fudaa.dodico.crue.common.DateDurationConverter; import org.fudaa.fudaa.crue.common.property.PropertyCrueUtils; import org.joda.time.Duration; @@ -16,13 +13,16 @@ import org.openide.explorer.propertysheet.ExPropertyEditor; import org.openide.explorer.propertysheet.PropertyEnv; import org.openide.nodes.Node; -import org.openide.nodes.PropertySupport; /** * * @author Frédéric Deniger */ public class DurationPropertyEditor extends PropertyEditorSupport implements ExPropertyEditor, PropertyChangeListener { + + public static void registerEditor() { + PropertyEditorManager.registerEditor(Duration.class, DurationPropertyEditor.class); + } PropertyEnv env; Modified: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/pdt/PdtVarPanelEditor.java =================================================================== --- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/pdt/PdtVarPanelEditor.java 2012-07-09 15:40:29 UTC (rev 7469) +++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/pdt/PdtVarPanelEditor.java 2012-07-09 16:39:08 UTC (rev 7470) @@ -35,9 +35,7 @@ */ public class PdtVarPanelEditor extends JPanel implements ExplorerManager.Provider, Lookup.Provider { - static { - PropertyEditorManager.registerEditor(Duration.class, DurationPropertyEditor.class); - } + OutlineView view; private ExplorerManager em = new ExplorerManager(); JButton btAdd; Modified: trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/property/AbstractNodeFirable.java =================================================================== --- trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/property/AbstractNodeFirable.java 2012-07-09 15:40:29 UTC (rev 7469) +++ trunk/soft/fudaa-crue/ui-common/src/main/java/org/fudaa/fudaa/crue/common/property/AbstractNodeFirable.java 2012-07-09 16:39:08 UTC (rev 7470) @@ -9,6 +9,7 @@ import org.fudaa.fudaa.crue.common.log.LogIconTranslationProvider; import org.openide.nodes.AbstractNode; import org.openide.nodes.Children; +import org.openide.nodes.Node; import org.openide.util.Lookup; /** @@ -56,5 +57,18 @@ setIconBaseWithExtension(LogIconTranslationProvider.getIconBase(CtuluLogLevel.WARNING)); } + public Node.Property find(String name) { + PropertySet[] propertySets = getPropertySets(); + for (PropertySet propertySet : propertySets) { + Property<?>[] properties = propertySet.getProperties(); + for (Property<?> property : properties) { + if (name.equals(property.getName())) { + return (Node.Property) property; + } + } + } + return null; + } + public abstract boolean isEditMode(); } Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingScenarioORESNodeAction.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingScenarioORESNodeAction.java 2012-07-09 15:40:29 UTC (rev 7469) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingScenarioORESNodeAction.java 2012-07-09 16:39:08 UTC (rev 7470) @@ -1,6 +1,5 @@ package org.fudaa.fudaa.crue.modelling.action; -import org.fudaa.fudaa.crue.modelling.calcul.ModellingModeleOPTGTopComponent; import org.fudaa.fudaa.crue.modelling.calcul.ModellingScenarioORESTopComponent; import org.openide.util.NbBundle; @@ -12,7 +11,7 @@ public ModellingScenarioORESNodeAction(String name) { - super(name, ModellingModeleOPTGTopComponent.MODE); + super(name, ModellingScenarioORESTopComponent.MODE); } @Override Copied: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingScenarioPCALNodeAction.java (from rev 7466, trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingScenarioORESNodeAction.java) =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingScenarioPCALNodeAction.java (rev 0) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/action/ModellingScenarioPCALNodeAction.java 2012-07-09 16:39:08 UTC (rev 7470) @@ -0,0 +1,37 @@ +package org.fudaa.fudaa.crue.modelling.action; + +import org.fudaa.fudaa.crue.modelling.calcul.ModellingScenarioPCALTopComponent; +import org.openide.util.NbBundle; + +/** + * + * @author deniger ( genesis) + */ +public abstract class ModellingScenarioPCALNodeAction extends AbstractModellingOpenScenarioNodeAction { + + public ModellingScenarioPCALNodeAction(String name) { + + super(name, ModellingScenarioPCALTopComponent.MODE); + } + + @Override + protected ModellingScenarioPCALTopComponent create() { + return new ModellingScenarioPCALTopComponent(); + } + + public static class Reopen extends ModellingScenarioPCALNodeAction { + + public Reopen() { + super(NbBundle.getMessage(ModellingScenarioPCALNodeAction.class, "ModellingScenarioPCALNodeAction.Name")); + setReopen(true); + } + } + + public static class NewFrame extends ModellingScenarioPCALNodeAction { + + public NewFrame() { + super(NbBundle.getMessage(ModellingScenarioPCALNodeAction.class, "ModellingScenarioPCALNodeAction.NewFrame.Name")); + setReopen(false); + } + } +} Copied: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingScenarioPCALTopComponent.form (from rev 7466, trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingScenarioORESTopComponent.form) =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingScenarioPCALTopComponent.form (rev 0) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingScenarioPCALTopComponent.form 2012-07-09 16:39:08 UTC (rev 7470) @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<Form version="1.5" maxVersion="1.7" type="org.netbeans.modules.form.forminfo.JPanelFormInfo"> + <AuxValues> + <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="1"/> + <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/> + <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/> + <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,1,44,0,0,1,-112"/> + </AuxValues> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/> +</Form> Copied: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingScenarioPCALTopComponent.java (from rev 7466, trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingScenarioORESTopComponent.java) =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingScenarioPCALTopComponent.java (rev 0) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingScenarioPCALTopComponent.java 2012-07-09 16:39:08 UTC (rev 7470) @@ -0,0 +1,126 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package org.fudaa.fudaa.crue.modelling.calcul; + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.beans.PropertyChangeEvent; +import java.beans.PropertyChangeListener; +import java.lang.reflect.InvocationTargetException; +import javax.swing.JButton; +import javax.swing.JCheckBox; +import javax.swing.JComponent; +import javax.swing.JPanel; +import org.fudaa.dodico.crue.metier.emh.EMHScenario; +import org.fudaa.dodico.crue.metier.emh.ParamCalcScenario; +import org.fudaa.fudaa.crue.modelling.node.CommonObjectNode; +import org.fudaa.fudaa.crue.modelling.services.EnumModification; +import org.fudaa.fudaa.crue.modelling.services.ScenarioModificationEvent; +import org.openide.util.NbBundle; +import org.openide.windows.TopComponent; +import org.netbeans.api.settings.ConvertAsProperties; +import org.openide.explorer.propertysheet.PropertySheet; +import org.openide.nodes.Node; +import org.openide.nodes.Node.Property; +import org.openide.util.Exceptions; + +/** + * Top component which displays something. + */ +@ConvertAsProperties(dtd = "-//org.fudaa.fudaa.crue.modelling//ModellingScenarioPCALTopComponent//EN", +autostore = false) +...@To...scription(preferredID = ModellingScenarioPCALTopComponent.TOPCOMPONENT_ID, iconBase = "org/fudaa/fudaa/crue/modelling/rond-orange_16.png", persistenceType = TopComponent.PERSISTENCE_ALWAYS) +...@To...gistration(mode = ModellingScenarioPCALTopComponent.MODE, openAtStartup = false, position = 1) +public final class ModellingScenarioPCALTopComponent extends AbstractScenarioTopComponent { + + public static final String MODE = "modelling-pcal"; + public static final String TOPCOMPONENT_ID = "ModellingScenarioPCALTopComponent"; + public static final String TOPCOMPONENT_ACTION = "CTL_" + TOPCOMPONENT_ID; + public static final String TOPCOMPONENT_ACTION_DISPLAYNAME = "#" + TOPCOMPONENT_ACTION; + + public ModellingScenarioPCALTopComponent() { + initComponents(); + setName(NbBundle.getMessage(ModellingScenarioPCALTopComponent.class, TOPCOMPONENT_ACTION)); + setToolTipText(NbBundle.getMessage(ModellingScenarioPCALTopComponent.class, "HINT_" + TOPCOMPONENT_ID)); + } + + @Override + protected void setEditable(boolean b) { + } + + @Override + public void valideModification() { + EMHScenario scenario = getScenario(); + ParamCalcScenario pcal = scenario.getParamCalcScenario(); + scenario.removeInfosEMH(pcal); + scenario.addInfosEMH(editedObject); + modellingScenarioModificationService.setScenarioModified(new ScenarioModificationEvent(EnumModification.PCAL));//a pour effet de recharger le scenario + setModified(false); + } + + private class ChangeListener implements PropertyChangeListener { + + @Override + public void propertyChange(PropertyChangeEvent evt) { + setModified(true); + } + } + ChangeListener changeListener; + ParamCalcScenario editedObject; + JButton cbNoDate; + + @Override + protected JComponent buildCenterPanel(EMHScenario scenario, JComponent oldCenter) { + cbNoDate = new JButton(NbBundle.getMessage(ModellingScenarioPCALTopComponent.class, "PCAL.DoNotUseDateDeb.Label")); + changeListener = new ChangeListener(); + editedObject = scenario.getParamCalcScenario().deepClone(); + final CommonObjectNode node = new CommonObjectNode(editedObject, getCcm(), perspectiveServiceModelling); + PropertySheet sheet = new PropertySheet(); + sheet.setNodes(new Node[]{node}); + node.addPropertyChangeListener(changeListener); + JPanel panel = new JPanel(new BorderLayout()); + panel.add(cbNoDate, BorderLayout.NORTH); + cbNoDate.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + Property find = node.find(ParamCalcScenario.PROP_DATE_DEB); + try { + find.setValue(null); + } catch (Exception ex) { + Exceptions.printStackTrace(ex); + } + } + }); + panel.add(sheet); + return panel; + + } + + /** + * This method is called from within the constructor to initialize the form. WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() { + + setLayout(new java.awt.BorderLayout()); + }// </editor-fold>//GEN-END:initComponents + + // Variables declaration - do not modify//GEN-BEGIN:variables + // End of variables declaration//GEN-END:variables + @Override + public void componentClosedTemporarily() { + } + + void writeProperties(java.util.Properties p) { +// p.setProperty("version", "1.0"); + } + + void readProperties(java.util.Properties p) { +// String version = p.getProperty("version"); + } +} Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/global/GlobalContainerNode.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/global/GlobalContainerNode.java 2012-07-09 15:40:29 UTC (rev 7469) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/global/GlobalContainerNode.java 2012-07-09 16:39:08 UTC (rev 7470) @@ -179,7 +179,9 @@ return new Action[]{ SystemAction.get(ModellingScenarioORESNodeAction.Reopen.class), SystemAction.get(ModellingScenarioORESNodeAction.NewFrame.class), - null,}; + null, + SystemAction.get(ModellingScenarioPCALNodeAction.Reopen.class), + SystemAction.get(ModellingScenarioPCALNodeAction.NewFrame.class),}; } } Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/node/CommonObjectNode.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/node/CommonObjectNode.java 2012-07-09 15:40:29 UTC (rev 7469) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/node/CommonObjectNode.java 2012-07-09 16:39:08 UTC (rev 7470) @@ -73,6 +73,7 @@ + @Override protected Sheet createSheet() { Sheet sheet = Sheet.createDefault(); Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/EnumModification.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/EnumModification.java 2012-07-09 15:40:29 UTC (rev 7469) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/services/EnumModification.java 2012-07-09 16:39:08 UTC (rev 7470) @@ -9,6 +9,6 @@ * @author deniger ( genesis) */ public enum EnumModification { - EMH_ORDER, COMMENTAIRE, ACTIVITY,EMH_RELATION,EMH_NAME,EMH_CREATION,EMH_COMMENTAIRE,OPTG,OPTR,OPTI,ORES,PNUM - + + EMH_ORDER, COMMENTAIRE, ACTIVITY, EMH_RELATION, EMH_NAME, EMH_CREATION, EMH_COMMENTAIRE, OPTG, OPTR, OPTI, ORES, PNUM, PCAL } Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/action/Bundle.properties =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/action/Bundle.properties 2012-07-09 15:40:29 UTC (rev 7469) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/action/Bundle.properties 2012-07-09 16:39:08 UTC (rev 7470) @@ -46,6 +46,10 @@ ModellingScenarioORESNodeAction.Name=Demandes de r\u00e9sultats ModellingScenarioORESNodeAction.NewFrame.Name=Demandes de r\u00e9sultats (nouvelle fen\u00eatre) + +ModellingScenarioPCALNodeAction.Name=Param\u00e8tres de calcul +ModellingScenarioPCALNodeAction.NewFrame.Name=Param\u00e8tres de calcul (nouvelle fen\u00eatre) + DeleteEMHAction.Name=Supprimer DeleteEMHCascadeAction.Name=Supprimer en cascade ChangeSousModeleParent.Label=Le sous-mod\u00e8le cible: Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/calcul/Bundle.properties =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/calcul/Bundle.properties 2012-07-09 15:40:29 UTC (rev 7469) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/calcul/Bundle.properties 2012-07-09 16:39:08 UTC (rev 7470) @@ -22,6 +22,10 @@ HINT_ModellingScenarioORESTopComponent=Demandes de r\u00e9sultats CTL_ModellingModelePNUMTopComponent=Param\u00e8tres num\u00e9riques HINT_ModellingModelePNUMTopComponent=Param\u00e8tres num\u00e9riques + +CTL_ModellingScenarioPCALTopComponent=Param\u00e8tres calcul +HINT_ModellingScenarioPCALTopComponent=Param\u00e8tres calcul methodInterpolationParameter.DisplayNames=Param\u00e8tres PNUM.UseParamNumCalcPseudoPerm.CheckBox=Utiliser param\u00e8tre calcul pseudo-permanent PNUM.UseParamNumCalcTrans.CheckBox=Utiliser param\u00e8tre calcul transitoire +PCAL.DoNotUseDateDeb.Label=Vider la date de d\u00e9but de scn\u00e9ario Copied: trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingPCALTopComponentTest.java (from rev 7466, trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingORESTopComponentTest.java) =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingPCALTopComponentTest.java (rev 0) +++ trunk/soft/fudaa-crue/ui-modelling/src/test/java/org/fudaa/fudaa/crue/modelling/calcul/ModellingPCALTopComponentTest.java 2012-07-09 16:39:08 UTC (rev 7470) @@ -0,0 +1,23 @@ + +package org.fudaa.fudaa.crue.modelling.calcul; + +import org.fudaa.dodico.crue.metier.emh.EMHScenario; +import org.fudaa.fudaa.crue.common.editor.LocalDateTimeEditor; +import org.fudaa.fudaa.crue.modelling.ModellingTestHelper; + +/** + * + * @author Frédéric Deniger + */ +public class ModellingPCALTopComponentTest { + + public static void main(String[] args) { + LocalDateTimeEditor.registerEditor(); + EMHScenario scenario = ModellingTestHelper.readScenario(); + ModellingScenarioPCALTopComponent top = new ModellingScenarioPCALTopComponent(); + ModellingTestHelper.configure(top, scenario); + top.testScenarioLoaded(scenario); + top.setEditable(true); + ModellingTestHelper.display(top); + } +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-07-10 08:27:54
|
Revision: 7472 http://fudaa.svn.sourceforge.net/fudaa/?rev=7472&view=rev Author: deniger Date: 2012-07-10 08:27:41 +0000 (Tue, 10 Jul 2012) Log Message: ----------- $ Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/pom.xml trunk/soft/fudaa-crue/crue-sysdoc/pom.xml trunk/soft/fudaa-crue/pom.xml trunk/soft/fudaa-crue/ui-application/pom.xml trunk/soft/fudaa-crue/ui-application/src/main/resources/etc/fudaacrue.conf trunk/soft/fudaa-crue/ui-branding/pom.xml trunk/soft/fudaa-crue/ui-commandline/pom.xml trunk/soft/fudaa-crue/ui-common/pom.xml trunk/soft/fudaa-crue/ui-comparison/pom.xml trunk/soft/fudaa-crue/ui-emh/pom.xml trunk/soft/fudaa-crue/ui-loader/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-study/pom.xml trunk/soft/fudaa-crue/ui-wrapper/pom.xml Added Paths: ----------- trunk/soft/fudaa-crue/crue-server/src/main/config/otfa-batch.sh Modified: trunk/soft/fudaa-crue/crue-server/pom.xml =================================================================== --- trunk/soft/fudaa-crue/crue-server/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/crue-server/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -4,7 +4,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> </parent> <artifactId>crue-server</artifactId> <name>Crue server</name> Added: trunk/soft/fudaa-crue/crue-server/src/main/config/otfa-batch.sh =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/config/otfa-batch.sh (rev 0) +++ trunk/soft/fudaa-crue/crue-server/src/main/config/otfa-batch.sh 2012-07-10 08:27:41 UTC (rev 7472) @@ -0,0 +1,2 @@ +#REM remplacer C:\Data\etc par le chemin vers le dossier contenu la configuration ( dossier etc) +java -DSiteConfigDir="$HOME/Fudaa-Crue/etc/" -jar otfa-batch-0.55.jar $1 \ No newline at end of file Modified: trunk/soft/fudaa-crue/crue-sysdoc/pom.xml =================================================================== --- trunk/soft/fudaa-crue/crue-sysdoc/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/crue-sysdoc/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -4,7 +4,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> </parent> <artifactId>crue-sysdoc</artifactId> <name>Crue Sysdoc</name> Modified: trunk/soft/fudaa-crue/pom.xml =================================================================== --- trunk/soft/fudaa-crue/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -8,7 +8,7 @@ </parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> <name>Fudaa-Crue</name> <packaging>pom</packaging> <ciManagement> Modified: trunk/soft/fudaa-crue/ui-application/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-application/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/ui-application/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -5,7 +5,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> </parent> <artifactId>application</artifactId> Modified: trunk/soft/fudaa-crue/ui-application/src/main/resources/etc/fudaacrue.conf =================================================================== --- trunk/soft/fudaa-crue/ui-application/src/main/resources/etc/fudaacrue.conf 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/ui-application/src/main/resources/etc/fudaacrue.conf 2012-07-10 08:27:41 UTC (rev 7472) @@ -1,6 +1,6 @@ # ${HOME} will be replaced by user home directory according to platform -default_userdir="${HOME}/.${APPNAME}/0.54-SNAPSHOT/" -default_mac_userdir="${HOME}/Library/Application Support/${APPNAME}/0.54/" +default_userdir="${HOME}/.${APPNAME}/0.56/" +default_mac_userdir="${HOME}/Library/Application Support/${APPNAME}/0.56/" # options used by the launcher by default, can be overridden by explicit # command line switches Modified: trunk/soft/fudaa-crue/ui-branding/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-branding/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/ui-branding/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -5,7 +5,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> </parent> <artifactId>ui-branding</artifactId> Modified: trunk/soft/fudaa-crue/ui-commandline/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-commandline/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/ui-commandline/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -5,7 +5,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> </parent> <artifactId>ui-commandline</artifactId> <packaging>nbm</packaging> Modified: trunk/soft/fudaa-crue/ui-common/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-common/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/ui-common/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -4,7 +4,7 @@ <parent> <artifactId>fudaa-crue</artifactId> <groupId>org.fudaa.soft.fudaa-crue</groupId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> </parent> <artifactId>ui-common</artifactId> Modified: trunk/soft/fudaa-crue/ui-comparison/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-comparison/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/ui-comparison/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -4,7 +4,7 @@ <parent> <artifactId>fudaa-crue</artifactId> <groupId>org.fudaa.soft.fudaa-crue</groupId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> </parent> <artifactId>ui-comparison</artifactId> <packaging>nbm</packaging> Modified: trunk/soft/fudaa-crue/ui-emh/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-emh/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/ui-emh/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -4,7 +4,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> </parent> <artifactId>ui-emh</artifactId> <packaging>nbm</packaging> Modified: trunk/soft/fudaa-crue/ui-loader/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-loader/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/ui-loader/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -4,7 +4,7 @@ <parent> <artifactId>fudaa-crue</artifactId> <groupId>org.fudaa.soft.fudaa-crue</groupId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> </parent> <artifactId>ui-loader</artifactId> <packaging>nbm</packaging> Modified: trunk/soft/fudaa-crue/ui-modelling/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/ui-modelling/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -4,7 +4,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> </parent> <packaging>nbm</packaging> <artifactId>ui-modelling</artifactId> Modified: trunk/soft/fudaa-crue/ui-options/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-options/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/ui-options/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -4,7 +4,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> </parent> <artifactId>ui-options</artifactId> <name>Crue UI Options</name> Modified: trunk/soft/fudaa-crue/ui-otfa/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-otfa/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/ui-otfa/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -4,7 +4,7 @@ <parent> <artifactId>fudaa-crue</artifactId> <groupId>org.fudaa.soft.fudaa-crue</groupId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> </parent> <artifactId>ui-otfa</artifactId> Modified: trunk/soft/fudaa-crue/ui-planimetry/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/ui-planimetry/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -4,7 +4,7 @@ <parent> <artifactId>fudaa-crue</artifactId> <groupId>org.fudaa.soft.fudaa-crue</groupId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> </parent> <packaging>nbm</packaging> <artifactId>ui-planimetry</artifactId> Modified: trunk/soft/fudaa-crue/ui-post/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-post/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/ui-post/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -4,7 +4,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> </parent> <packaging>nbm</packaging> <artifactId>ui-post</artifactId> Modified: trunk/soft/fudaa-crue/ui-study/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-study/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/ui-study/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -4,7 +4,7 @@ <parent> <groupId>org.fudaa.soft.fudaa-crue</groupId> <artifactId>fudaa-crue</artifactId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> </parent> <packaging>nbm</packaging> <artifactId>ui-study</artifactId> Modified: trunk/soft/fudaa-crue/ui-wrapper/pom.xml =================================================================== --- trunk/soft/fudaa-crue/ui-wrapper/pom.xml 2012-07-10 07:33:23 UTC (rev 7471) +++ trunk/soft/fudaa-crue/ui-wrapper/pom.xml 2012-07-10 08:27:41 UTC (rev 7472) @@ -4,7 +4,7 @@ <parent> <artifactId>fudaa-crue</artifactId> <groupId>org.fudaa.soft.fudaa-crue</groupId> - <version>0.55-SNAPSHOT</version> + <version>0.56-SNAPSHOT</version> </parent> <artifactId>ui-wrapper</artifactId> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-07-12 09:14:19
|
Revision: 7481 http://fudaa.svn.sourceforge.net/fudaa/?rev=7481&view=rev Author: deniger Date: 2012-07-12 09:14:09 +0000 (Thu, 12 Jul 2012) Log Message: ----------- Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/io/dao/CrueXmlReaderWriterImpl.java trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/io/neuf/DCFileReader.java trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidatorNomCasierContent.java trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationEtu30.java trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationEtu70.java trunk/soft/fudaa-crue/crue-server/src/test/resources/integration/v1_1_1/Etu3-0.zip trunk/soft/fudaa-crue/crue-server/src/test/resources/integration/v1_1_1/Etu7-0.zip trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListCasierModificationProcess.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListModificationProcess.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/EMHModificationProcessor.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheTopComponent.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHCasierTopComponent.java Added Paths: ----------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionChangeActivity.java Added: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionChangeActivity.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionChangeActivity.java (rev 0) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionChangeActivity.java 2012-07-12 09:14:09 UTC (rev 7481) @@ -0,0 +1,33 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package org.fudaa.dodico.crue.edition; + +import java.util.Collection; +import org.fudaa.ctulu.CtuluLog; +import org.fudaa.dodico.crue.config.CrueConfigMetier; +import org.fudaa.dodico.crue.metier.emh.EMH; +import org.fudaa.dodico.crue.metier.emh.EMHModeleBase; + +/** + * + * @author Frédéric Deniger + */ +public class EditionChangeActivity { + + public CtuluLog propagateActivityChanged(EMHModeleBase modele, EMH emh, CrueConfigMetier ccm) { + EditionOPTIChanged changeCini = new EditionOPTIChanged(); + CtuluLog res = changeCini.propagateChange(modele, ccm); + + return res; + + } + public CtuluLog propagateActivityChanged(EMHModeleBase modele, Collection<? extends EMH> emh, CrueConfigMetier ccm) { + EditionOPTIChanged changeCini = new EditionOPTIChanged(); + CtuluLog res = changeCini.propagateChange(modele, ccm); + + return res; + + } +} Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/io/dao/CrueXmlReaderWriterImpl.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/io/dao/CrueXmlReaderWriterImpl.java 2012-07-11 20:44:34 UTC (rev 7480) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/io/dao/CrueXmlReaderWriterImpl.java 2012-07-12 09:14:09 UTC (rev 7481) @@ -306,11 +306,11 @@ } catch (ConversionException conversionException) { LOGGER.log(Level.FINE, "io.unknown.bsalise", conversionException); analyser.addSevereError("io.unknown.bsalise", - StringUtils.substringBeforeLast(conversionException.getShortMessage(), ".")); + StringUtils.substringAfterLast(conversionException.getShortMessage(), ".")); } catch (CannotResolveClassException cannotResolveException) { LOGGER.log(Level.FINE, "io.unknown.bsalise", cannotResolveException); - analyser.addSevereError("io.unknown.bsalise", cannotResolveException.getMessage()); + analyser.addSevereError("io.unknown.bsalise", StringUtils.substringAfterLast(cannotResolveException.getMessage(), ".")); } catch (final Exception e) { LOGGER.log(Level.SEVERE, "io.xml.error", e); Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/io/neuf/DCFileReader.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/io/neuf/DCFileReader.java 2012-07-11 20:44:34 UTC (rev 7480) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/io/neuf/DCFileReader.java 2012-07-12 09:14:09 UTC (rev 7481) @@ -1372,13 +1372,17 @@ CatEMHNoeud noeudRef = metier.findNoeudByReference(idNoeud); if (noeudRef == null) { - noeudRef = metier.createNode(idNoeud);// new EMHNoeudNiveauContinu(idNoeud); + noeudRef = metier.createNode(idNoeud); if (noeudRef == null) { analyze_.addSevereError("crue.noeud.notExist.forCasier", idNoeud, newCasier.getNom()); } metier.add(noeudRef); } else { newCasier.setNoeud(noeudRef); + //pour s'assurer que les nom sont bien égaux en prenant en compte la casse + if(!noeudRef.getNom().equals(idNoeud)){ + noeudRef.setNom(idNoeud); + } } // on ajoute la valeur par défaut pour dpti: Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidatorNomCasierContent.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidatorNomCasierContent.java 2012-07-11 20:44:34 UTC (rev 7480) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/validation/ValidatorNomCasierContent.java 2012-07-12 09:14:09 UTC (rev 7481) @@ -3,23 +3,15 @@ import java.util.ArrayList; import java.util.List; 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.metier.emh.CatEMHBranche; import org.fudaa.dodico.crue.metier.emh.CatEMHCasier; import org.fudaa.dodico.crue.metier.emh.CatEMHNoeud; -import org.fudaa.dodico.crue.metier.emh.CatEMHSection; import org.fudaa.dodico.crue.metier.emh.EMH; import org.fudaa.dodico.crue.metier.emh.EMHModeleBase; import org.fudaa.dodico.crue.metier.emh.EMHScenario; -import org.fudaa.dodico.crue.metier.emh.EMHSectionIdem; import org.fudaa.dodico.crue.metier.emh.EMHSousModele; -import org.fudaa.dodico.crue.metier.emh.EnumTypeLoi; -import org.fudaa.dodico.crue.metier.emh.RelationEMHSectionDansBranche; import org.fudaa.dodico.crue.metier.factory.CruePrefix; -import org.fudaa.dodico.crue.metier.helper.EMHHelper; -import org.fudaa.dodico.crue.metier.transformer.TransformerHelper; /** * Modified: trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationEtu30.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationEtu30.java 2012-07-11 20:44:34 UTC (rev 7480) +++ trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationEtu30.java 2012-07-12 09:14:09 UTC (rev 7481) @@ -256,7 +256,7 @@ @Test public void testSc_M30_v7c10() { // IntegrationHelper.testScenario(projet, "Sc_M3-0_v7c10", new ErrorBilanTester(0, 0, 4, 0)); - IntegrationHelper.testScenario(projet, "Sc_M3-0_v7c10", new ErrorBilanTester(0, 0, 8, 0)); + IntegrationHelper.testScenario(projet, "Sc_M3-0_v7c10", new ErrorBilanTester(0, 0, 7, 0)); } @Test @@ -350,8 +350,8 @@ @Test public void testSc_M30_e9c10() { -// IntegrationHelper.testScenario(projet, "Sc_M3-0_e9c10", new ErrorBilanTester(12, 0, 2, 0)); - IntegrationHelper.testScenario(projet, "Sc_M3-0_e9c10", new ErrorBilanTester(12, 0, 4, 0)); +// IntegrationHelper.testScenario(projet, "Sc_M3-0_e9c10", new ErrorBilanTester(14, 0, 2, 0)); + IntegrationHelper.testScenario(projet, "Sc_M3-0_e9c10", new ErrorBilanTester(14, 0, 4, 0)); } private File getEtuFile() { Modified: trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationEtu70.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationEtu70.java 2012-07-11 20:44:34 UTC (rev 7480) +++ trunk/soft/fudaa-crue/crue-server/src/test/java/org/fudaa/dodico/crue/integration/TestIntegrationEtu70.java 2012-07-12 09:14:09 UTC (rev 7481) @@ -46,17 +46,17 @@ @Test public void testSc_M70_c9c9() { - IntegrationHelper.exportToCrue9(getEtuFile().getParentFile(), projet, "Sc_M7-0_c9", "Sc_M7-0_c9c9", "M7-0_c9c9", - Arrays.asList("DPTG01.1")); + IntegrationHelper.exportToCrue9(getEtuFile().getParentFile(), projet, "Sc_M7-0_c9", "Sc_M7-0_c9c9", "M7-0_c9c9",true, + 0); IntegrationHelper.testScenario(projet, "Sc_M7-0_c9c9", new ErrorBilanTester(0, 0, 273, 0)); } @Test - public void testSc_M70_c1Oc9() { + public void testSc_M70_c10c9() { // IntegrationHelper.exportToCrue9(getEtuFile().getParentFile(), projet, "Sc_M7-0_c10", "Sc_M7-0_c10c9", "M7-0_c10c9", // Arrays.asList("COM5", "DPTG01.1","COM1", "COM3","OPTR1")); IntegrationHelper.exportToCrue9(getEtuFile().getParentFile(), projet, "Sc_M7-0_c10", "Sc_M7-0_c10c9", "M7-0_c10c9", - Arrays.asList("COM5", "DPTG01.1", "DPTG04","COM1", "COM3","OPTR1")); + Arrays.asList("COM5", "DPTG04","COM1", "COM3","OPTR1")); IntegrationHelper.testScenario(projet, "Sc_M7-0_c10c9", new ErrorBilanTester(0, 0, 273, 0)); } Modified: trunk/soft/fudaa-crue/crue-server/src/test/resources/integration/v1_1_1/Etu3-0.zip =================================================================== (Binary files differ) Modified: trunk/soft/fudaa-crue/crue-server/src/test/resources/integration/v1_1_1/Etu7-0.zip =================================================================== (Binary files differ) Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListCasierModificationProcess.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListCasierModificationProcess.java 2012-07-11 20:44:34 UTC (rev 7480) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListCasierModificationProcess.java 2012-07-12 09:14:09 UTC (rev 7481) @@ -8,8 +8,8 @@ import org.fudaa.ctulu.CtuluLog; import org.fudaa.dodico.crue.common.Pair; import org.fudaa.dodico.crue.config.CrueConfigMetier; +import org.fudaa.dodico.crue.edition.EditionChangeActivity; import org.fudaa.dodico.crue.edition.EditionChangeUtils; -import org.fudaa.dodico.crue.edition.EditionOPTIChanged; import org.fudaa.dodico.crue.edition.ReorderEMHProcess; import org.fudaa.dodico.crue.metier.emh.CatEMHCasier; import org.fudaa.dodico.crue.metier.emh.CatEMHNoeud; @@ -133,7 +133,8 @@ } } if (activeModified) { - CtuluLog propagateChange = new EditionOPTIChanged().propagateChange(emhSousModele.getParent(), ccm); + EditionChangeActivity change = new EditionChangeActivity(); + CtuluLog propagateChange = change.propagateActivityChanged(emhSousModele.getParent(), casiers, ccm); res.first.addAllLogRecord(propagateChange); } Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListModificationProcess.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListModificationProcess.java 2012-07-11 20:44:34 UTC (rev 7480) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListModificationProcess.java 2012-07-12 09:14:09 UTC (rev 7481) @@ -5,6 +5,7 @@ import java.util.List; import org.fudaa.ctulu.CtuluLog; import org.fudaa.dodico.crue.config.CrueConfigMetier; +import org.fudaa.dodico.crue.edition.EditionChangeActivity; import org.fudaa.dodico.crue.edition.EditionOPTIChanged; import org.fudaa.dodico.crue.edition.ReorderEMHProcess; import org.fudaa.dodico.crue.metier.emh.CatEMHBranche; @@ -75,8 +76,8 @@ } } if (activeModified) { - EditionOPTIChanged changeCini = new EditionOPTIChanged(); - res=changeCini.propagateChange(sousModele.getParent(), ccm); + EditionChangeActivity change=new EditionChangeActivity(); + res=change.propagateActivityChanged(sousModele.getParent(),emhs, ccm); } List<EnumModification> modifications = new ArrayList<EnumModification>(); if (reorderDone) { Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/EMHModificationProcessor.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/EMHModificationProcessor.java 2012-07-11 20:44:34 UTC (rev 7480) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/EMHModificationProcessor.java 2012-07-12 09:14:09 UTC (rev 7481) @@ -4,8 +4,13 @@ */ package org.fudaa.fudaa.crue.modelling.emh; +import org.fudaa.ctulu.CtuluLog; +import org.fudaa.dodico.crue.config.CrueConfigMetier; +import org.fudaa.dodico.crue.edition.EditionChangeActivity; import org.fudaa.dodico.crue.edition.EditionRename; +import org.fudaa.dodico.crue.metier.emh.CatEMHActivable; import org.fudaa.dodico.crue.metier.emh.EMH; +import org.fudaa.dodico.crue.metier.emh.EMHModeleBase; /** * @@ -17,6 +22,14 @@ return new EditionRename().rename(emh, newName); } + public CtuluLog changeActivity(CatEMHActivable emh, EMHModeleBase modele, CrueConfigMetier ccm, boolean newValue) { + if (emh.getUserActive() == newValue) { + return null; + } + EditionChangeActivity change = new EditionChangeActivity(); + return change.propagateActivityChanged(modele, emh, ccm); + } + /** * * @param emh Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheTopComponent.java 2012-07-11 20:44:34 UTC (rev 7480) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheTopComponent.java 2012-07-12 09:14:09 UTC (rev 7481) @@ -11,6 +11,7 @@ import javax.swing.JCheckBox; import javax.swing.JPanel; import org.fudaa.dodico.crue.metier.emh.CatEMHActivable; +import org.fudaa.dodico.crue.metier.emh.CatEMHBranche; import org.fudaa.dodico.crue.metier.emh.EMH; import org.fudaa.fudaa.crue.common.helper.DialogHelper; import org.fudaa.fudaa.crue.modelling.services.EnumModification; @@ -59,13 +60,13 @@ public void valideModification() { EMHModificationProcessor processor = new EMHModificationProcessor(); final String newName = jEMHName.getText(); - final EMH emh = getEMH(); + final CatEMHBranche emh = getEMH(); String error = processor.isNameValid(emh, newName); if (error != null) { DialogHelper.showError(error); } else { processor.changeName(emh, newName); - ((CatEMHActivable) emh).setUserActive(cbActive.isSelected()); + processor.changeActivity(emh, emh.getParent().getParent(), getCcm(), cbActive.isSelected()); modellingScenarioModificationService.setScenarioModified(new ScenarioModificationEvent(EnumModification.EMH_NAME)); setModified(false); } Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHCasierTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHCasierTopComponent.java 2012-07-11 20:44:34 UTC (rev 7480) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHCasierTopComponent.java 2012-07-12 09:14:09 UTC (rev 7481) @@ -11,6 +11,7 @@ import javax.swing.JCheckBox; import javax.swing.JPanel; import org.fudaa.dodico.crue.metier.emh.CatEMHActivable; +import org.fudaa.dodico.crue.metier.emh.CatEMHCasier; import org.fudaa.dodico.crue.metier.emh.EMH; import org.fudaa.fudaa.crue.common.helper.DialogHelper; import org.fudaa.fudaa.crue.modelling.services.EnumModification; @@ -60,13 +61,13 @@ public void valideModification() { EMHModificationProcessor processor = new EMHModificationProcessor(); final String newName = jEMHName.getText(); - final EMH emh = getEMH(); + final CatEMHCasier emh = getEMH(); String error = processor.isNameValid(emh, newName); if (error != null) { DialogHelper.showError(error); } else { processor.changeName(emh, newName); - ((CatEMHActivable) emh).setUserActive(cbActive.isSelected()); + processor.changeActivity(emh, emh.getParent().getParent(), getCcm(), cbActive.isSelected()); modellingScenarioModificationService.setScenarioModified(new ScenarioModificationEvent(EnumModification.EMH_NAME)); setModified(false); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-07-12 21:01:29
|
Revision: 7485 http://fudaa.svn.sourceforge.net/fudaa/?rev=7485&view=rev Author: deniger Date: 2012-07-12 21:01:23 +0000 (Thu, 12 Jul 2012) Log Message: ----------- Modified Paths: -------------- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionPrevalidateModifyRelationSection.java trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionRelationSection.java trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionRename.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListAjoutCasierProcess.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListAjoutNoeudProcess.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListAjoutRelationSectionProcess.java Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionPrevalidateModifyRelationSection.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionPrevalidateModifyRelationSection.java 2012-07-12 20:24:17 UTC (rev 7484) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionPrevalidateModifyRelationSection.java 2012-07-12 21:01:23 UTC (rev 7485) @@ -4,14 +4,11 @@ */ package org.fudaa.dodico.crue.edition; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.TreeSet; +import java.util.*; +import org.apache.commons.collections.map.MultiKeyMap; import org.apache.commons.lang.StringUtils; import org.fudaa.ctulu.CtuluLog; +import org.fudaa.ctulu.CtuluLogLevel; import org.fudaa.ctulu.CtuluLogRecord; import org.fudaa.dodico.crue.common.BusinessMessages; import org.fudaa.dodico.crue.common.Pair; @@ -73,6 +70,20 @@ return wrongBranche; } + protected CtuluLog removeDuplicateLines(ValidationMessage<ListRelationSectionContent> res) { + CtuluLog withoutDuplicate = new CtuluLog(BusinessMessages.RESOURCE_BUNDLE); + List<CtuluLogRecord> records = res.log.getRecords(); + MultiKeyMap map = new MultiKeyMap(); + for (CtuluLogRecord record : records) { + String args = StringUtils.join(record.getArgs()); + if (!map.containsKey(record.getMsg(), args)) { + withoutDuplicate.addRecord(record); + map.put(record.getMsg(), args, record); + } + } + return withoutDuplicate; + } + private class BadXpContainer { List<String> branchesDistanceNullButXpIsNot = new ArrayList<String>(); @@ -231,14 +242,13 @@ if (badXp.branchesDistanceNullButXpIsNot.contains(brancheNom)) { msgs.add(log.addSevereError("ChangeEMH.XpIsNotNullForBrancheWithNullDistance", brancheNom)); } - if(badXp.branchesDistanceNotNullAndAmontNotZero.contains(brancheNom)){ + if (badXp.branchesDistanceNotNullAndAmontNotZero.contains(brancheNom)) { msgs.add(log.addSevereError("ChangeEMH.NoZeroXpForBranche", brancheNom)); } //on ne doit modifier que le nombre de section existante. if (branche != null && brancheWithWrongNumberOfRelation.contains(brancheNom)) { msgs.add(log.addSevereError("ChangeEMH.NewRelationEMHCountError", brancheNom, branche.getSections().size(), sectionByBrancheName.get(brancheNom).size())); } - } if (!msgs.isEmpty()) { res.accepted = false; @@ -252,6 +262,7 @@ } } + res.log = removeDuplicateLines(res); return res; } Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionRelationSection.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionRelationSection.java 2012-07-12 20:24:17 UTC (rev 7484) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionRelationSection.java 2012-07-12 21:01:23 UTC (rev 7485) @@ -43,7 +43,7 @@ Map<String, CatEMHSection> sectionsByNom = TransformerHelper.toMapOfNom(emhSousModele.getSections()); updateSections(contents, sectionsByNom); //on met a jour les relation - Map<String, EMHBrancheSaintVenant> branchesByNom = TransformerHelper.toMapOfNom(emhSousModele.getBranchesSaintVenant()); + Map<String, CatEMHBranche> branchesByNom = TransformerHelper.toMapOfNom(emhSousModele.getBranches()); Map<String, List<ListRelationSectionContent>> newContentByBrancheName = EditionPrevalidateModifyRelationSection.getNewContentByBrancheName(contents); List<EnumBrancheType> brancheTypeWithDistanceNotNull = DelegateValidatorBranche.getBrancheTypeWithDistanceNotNull(); for (Map.Entry<String, List<ListRelationSectionContent>> entry : newContentByBrancheName.entrySet()) { Modified: trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionRename.java =================================================================== --- trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionRename.java 2012-07-12 20:24:17 UTC (rev 7484) +++ trunk/soft/fudaa-crue/crue-server/src/main/java/org/fudaa/dodico/crue/edition/EditionRename.java 2012-07-12 21:01:23 UTC (rev 7485) @@ -1,7 +1,9 @@ package org.fudaa.dodico.crue.edition; +import java.util.Collection; import java.util.List; import java.util.Set; +import org.apache.commons.lang.StringUtils; import org.fudaa.dodico.crue.common.BusinessMessages; import org.fudaa.dodico.crue.metier.emh.*; import org.fudaa.dodico.crue.metier.factory.CruePrefix; @@ -14,7 +16,7 @@ * @author deniger ( genesis) */ public class EditionRename { - + public String rename(EMH emh, String newName) { String error = isNameValid(emh, newName); if (error != null) { @@ -24,11 +26,15 @@ if (emh.getCatType().equals(EnumCatEMH.NOEUD)) { CatEMHNoeud nd = (CatEMHNoeud) emh; if (nd.getCasier() != null) { - nd.getCasier().setNom(CruePrefix.changePrefix(newName, EnumCatEMH.CASIER)); + final String newCasierName = CruePrefix.changePrefix(newName, EnumCatEMH.CASIER); + nd.getCasier().setNom(newCasierName); + propagateCasierRenamed(nd.getCasier(), newCasierName); } } else if (emh.getCatType().equals(EnumCatEMH.CASIER)) { CatEMHCasier casier = (CatEMHCasier) emh; casier.getNoeud().setNom(CruePrefix.changePrefix(newName, EnumCatEMH.NOEUD)); + propagateCasierRenamed(casier, newName); + } else if (emh.getCatType().equals(EnumCatEMH.SECTION)) { CatEMHSection section = (CatEMHSection) emh; if (section.getSectionType().equals(EnumSectionType.EMHSectionProfil)) { @@ -37,10 +43,25 @@ profilSection.setNom(CruePrefix.changePrefix(newName, CruePrefix.P_SECTION, CruePrefix.P_PROFIL_SECTION)); } } - + return null; } + protected void propagateCasierRenamed(CatEMHCasier casier, String newCasierName) { + Collection<DonPrtGeoProfilCasier> profilsCasier = EMHHelper.selectClass(casier.getInfosEMH(), DonPrtGeoProfilCasier.class); + if (profilsCasier != null) { + for (DonPrtGeoProfilCasier profilCasier : profilsCasier) { + String suffix = StringUtils.substringAfterLast(profilCasier.getNom(), "_"); + profilCasier.setNom(CruePrefix.changePrefix(newCasierName, CruePrefix.P_CASIER, CruePrefix.P_PROFIL_CASIER) + "_" + suffix); + + } + } + DonPrtGeoBatiCasier batiCasier = EMHHelper.selectFirstOfClass(casier.getInfosEMH(), DonPrtGeoBatiCasier.class); + if (batiCasier != null) { + batiCasier.setNom(CruePrefix.changePrefix(newCasierName, CruePrefix.P_CASIER, CruePrefix.P_BATI_CASIER)); + } + } + /** * * @param emh Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListAjoutCasierProcess.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListAjoutCasierProcess.java 2012-07-12 20:24:17 UTC (rev 7484) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListAjoutCasierProcess.java 2012-07-12 21:01:23 UTC (rev 7485) @@ -115,8 +115,8 @@ return createCasiersMessages.log; } - protected Map<ListCasierContent, ListCasierContentAddNode> getContentList(Node[] newCasiers) { - Map<ListCasierContent, ListCasierContentAddNode> contents = new LinkedHashMap<ListCasierContent, ListCasierContentAddNode>(); + protected LinkedHashMap<ListCasierContent, ListCasierContentAddNode> getContentList(Node[] newCasiers) { + LinkedHashMap<ListCasierContent, ListCasierContentAddNode> contents = new LinkedHashMap<ListCasierContent, ListCasierContentAddNode>(); for (Node node : newCasiers) { ListCasierContent content = node.getLookup().lookup(ListCasierContent.class); if (content != null) { Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListAjoutNoeudProcess.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListAjoutNoeudProcess.java 2012-07-12 20:24:17 UTC (rev 7484) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListAjoutNoeudProcess.java 2012-07-12 21:01:23 UTC (rev 7485) @@ -79,8 +79,8 @@ return log; } - protected Map<ListNoeudContent, ListNoeudContentAddNode> getContentList(Node[] newNoeuds) { - Map<ListNoeudContent, ListNoeudContentAddNode> contents = new LinkedHashMap<ListNoeudContent, ListNoeudContentAddNode>(); + protected LinkedHashMap<ListNoeudContent, ListNoeudContentAddNode> getContentList(Node[] newNoeuds) { + LinkedHashMap<ListNoeudContent, ListNoeudContentAddNode> contents = new LinkedHashMap<ListNoeudContent, ListNoeudContentAddNode>(); for (Node node : newNoeuds) { ListNoeudContent content = node.getLookup().lookup(ListNoeudContent.class); if (content != null) { Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListAjoutRelationSectionProcess.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListAjoutRelationSectionProcess.java 2012-07-12 20:24:17 UTC (rev 7484) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListAjoutRelationSectionProcess.java 2012-07-12 21:01:23 UTC (rev 7485) @@ -3,12 +3,7 @@ import com.Ostermiller.util.CSVParser; import java.awt.Toolkit; import java.awt.datatransfer.DataFlavor; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import org.apache.commons.lang.StringUtils; import org.fudaa.ctulu.CtuluLog; import org.fudaa.dodico.crue.common.CollectionCrueUtil; @@ -134,8 +129,8 @@ return createSectionsMessages.log; } - protected Map<ListRelationSectionContent, ListRelationSectionContentAddNode> getContentList(Node[] newNoeuds) { - Map<ListRelationSectionContent, ListRelationSectionContentAddNode> contents = new HashMap<ListRelationSectionContent, ListRelationSectionContentAddNode>(); + protected LinkedHashMap<ListRelationSectionContent, ListRelationSectionContentAddNode> getContentList(Node[] newNoeuds) { + LinkedHashMap<ListRelationSectionContent, ListRelationSectionContentAddNode> contents = new LinkedHashMap<ListRelationSectionContent, ListRelationSectionContentAddNode>(); for (Node node : newNoeuds) { ListRelationSectionContent content = node.getLookup().lookup(ListRelationSectionContent.class); if (content != null) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <de...@us...> - 2012-07-12 21:33:14
|
Revision: 7487 http://fudaa.svn.sourceforge.net/fudaa/?rev=7487&view=rev Author: deniger Date: 2012-07-12 21:33:07 +0000 (Thu, 12 Jul 2012) Log Message: ----------- Modified Paths: -------------- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListCasierModificationProcess.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/AbstractModellingEMHTopComponent.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/EMHModificationProcessor.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheTopComponent.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHCasierTopComponent.java trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingOpenEMHNodeAction.java trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/calcul/Bundle.properties trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/list/Bundle.properties 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/PlanimetryVisuPanelController.java Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListCasierModificationProcess.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListCasierModificationProcess.java 2012-07-12 21:24:53 UTC (rev 7486) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/edition/ListCasierModificationProcess.java 2012-07-12 21:33:07 UTC (rev 7487) @@ -10,6 +10,7 @@ import org.fudaa.dodico.crue.config.CrueConfigMetier; import org.fudaa.dodico.crue.edition.EditionChangeActivity; import org.fudaa.dodico.crue.edition.EditionChangeUtils; +import org.fudaa.dodico.crue.edition.EditionRename; import org.fudaa.dodico.crue.edition.ReorderEMHProcess; import org.fudaa.dodico.crue.metier.emh.CatEMHCasier; import org.fudaa.dodico.crue.metier.emh.CatEMHNoeud; @@ -111,6 +112,7 @@ if (newData != null) { if (casier.getUserActive() != newData.active) { casier.setUserActive(newData.active); + //le changement du caractère actif sera propage par la suite. activeModified = true; } } @@ -120,7 +122,7 @@ if (casierNameChanged) { for (CatEMHCasier casier : casiers) { CasierData newData = dataByUid.get(casier.getUiId()); - casier.setNom(newData.casierName); + new EditionRename().rename(casier, newData.casierName); } } if (casierRelationNoeudChanged) { Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/AbstractModellingEMHTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/AbstractModellingEMHTopComponent.java 2012-07-12 21:24:53 UTC (rev 7486) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/AbstractModellingEMHTopComponent.java 2012-07-12 21:33:07 UTC (rev 7487) @@ -11,6 +11,7 @@ import org.apache.commons.lang.ObjectUtils; import org.apache.commons.lang.StringUtils; import org.fudaa.ctulu.CtuluLogLevel; +import org.fudaa.dodico.crue.edition.EditionRename; import org.fudaa.dodico.crue.metier.emh.EMH; import org.fudaa.dodico.crue.metier.emh.EMHScenario; import org.fudaa.dodico.crue.validation.ValidationPatternHelper; @@ -40,13 +41,11 @@ @Override public void valideModification() { - EMHModificationProcessor processor = new EMHModificationProcessor(); final String newName = jEMHName.getText(); - String error = processor.isNameValid(getEMH(), newName); + String error = new EditionRename().rename(getEMH(), newName); if (error != null) { DialogHelper.showError(error); } else { - processor.changeName(getEMH(), newName); modellingScenarioModificationService.setScenarioModified(new ScenarioModificationEvent(EnumModification.EMH_NAME)); setModified(false); } Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/EMHModificationProcessor.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/EMHModificationProcessor.java 2012-07-12 21:24:53 UTC (rev 7486) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/EMHModificationProcessor.java 2012-07-12 21:33:07 UTC (rev 7487) @@ -7,9 +7,7 @@ import org.fudaa.ctulu.CtuluLog; import org.fudaa.dodico.crue.config.CrueConfigMetier; import org.fudaa.dodico.crue.edition.EditionChangeActivity; -import org.fudaa.dodico.crue.edition.EditionRename; import org.fudaa.dodico.crue.metier.emh.CatEMHActivable; -import org.fudaa.dodico.crue.metier.emh.EMH; import org.fudaa.dodico.crue.metier.emh.EMHModeleBase; /** @@ -18,10 +16,6 @@ */ public class EMHModificationProcessor { - public String changeName(EMH emh, String newName) { - return new EditionRename().rename(emh, newName); - } - public CtuluLog changeActivity(CatEMHActivable emh, EMHModeleBase modele, CrueConfigMetier ccm, boolean newValue) { if (emh.getUserActive() == newValue) { return null; @@ -29,14 +23,4 @@ EditionChangeActivity change = new EditionChangeActivity(); return change.propagateActivityChanged(modele, emh, ccm); } - - /** - * - * @param emh - * @param newName - * @return une chaine non vide si erreur - */ - public String isNameValid(EMH emh, String newName) { - return new EditionRename().isNameValid(emh, newName); - } } Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheTopComponent.java 2012-07-12 21:24:53 UTC (rev 7486) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHBrancheTopComponent.java 2012-07-12 21:33:07 UTC (rev 7487) @@ -10,6 +10,7 @@ import java.awt.event.ActionListener; import javax.swing.JCheckBox; import javax.swing.JPanel; +import org.fudaa.dodico.crue.edition.EditionRename; import org.fudaa.dodico.crue.metier.emh.CatEMHActivable; import org.fudaa.dodico.crue.metier.emh.CatEMHBranche; import org.fudaa.dodico.crue.metier.emh.EMH; @@ -58,14 +59,13 @@ @Override public void valideModification() { - EMHModificationProcessor processor = new EMHModificationProcessor(); final String newName = jEMHName.getText(); final CatEMHBranche emh = getEMH(); - String error = processor.isNameValid(emh, newName); + String error = new EditionRename().rename(emh, newName); if (error != null) { DialogHelper.showError(error); } else { - processor.changeName(emh, newName); + EMHModificationProcessor processor = new EMHModificationProcessor(); processor.changeActivity(emh, emh.getParent().getParent(), getCcm(), cbActive.isSelected()); modellingScenarioModificationService.setScenarioModified(new ScenarioModificationEvent(EnumModification.EMH_NAME)); setModified(false); Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHCasierTopComponent.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHCasierTopComponent.java 2012-07-12 21:24:53 UTC (rev 7486) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingEMHCasierTopComponent.java 2012-07-12 21:33:07 UTC (rev 7487) @@ -10,6 +10,7 @@ import java.awt.event.ActionListener; import javax.swing.JCheckBox; import javax.swing.JPanel; +import org.fudaa.dodico.crue.edition.EditionRename; import org.fudaa.dodico.crue.metier.emh.CatEMHActivable; import org.fudaa.dodico.crue.metier.emh.CatEMHCasier; import org.fudaa.dodico.crue.metier.emh.EMH; @@ -59,14 +60,13 @@ @Override public void valideModification() { - EMHModificationProcessor processor = new EMHModificationProcessor(); final String newName = jEMHName.getText(); final CatEMHCasier emh = getEMH(); - String error = processor.isNameValid(emh, newName); + String error = new EditionRename().rename(emh, newName); if (error != null) { DialogHelper.showError(error); } else { - processor.changeName(emh, newName); + EMHModificationProcessor processor = new EMHModificationProcessor(); processor.changeActivity(emh, emh.getParent().getParent(), getCcm(), cbActive.isSelected()); modellingScenarioModificationService.setScenarioModified(new ScenarioModificationEvent(EnumModification.EMH_NAME)); setModified(false); Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingOpenEMHNodeAction.java =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingOpenEMHNodeAction.java 2012-07-12 21:24:53 UTC (rev 7486) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/java/org/fudaa/fudaa/crue/modelling/emh/ModellingOpenEMHNodeAction.java 2012-07-12 21:33:07 UTC (rev 7487) @@ -11,6 +11,7 @@ import org.openide.nodes.Children; import org.openide.nodes.Node; import org.openide.util.NbBundle; +import org.openide.util.actions.SystemAction; import org.openide.util.lookup.Lookups; import org.openide.windows.TopComponent; @@ -19,21 +20,21 @@ * @author Frédéric Deniger */ public class ModellingOpenEMHNodeAction extends AbstractModellingOpenTopNodeAction { - + public ModellingOpenEMHNodeAction(String name) { super(name, null); } - + public ModellingOpenEMHNodeAction() { super(NbBundle.getMessage(ModellingOpenEMHNodeAction.class, "ModellingOpenEMHNodeAction.DisplayName"), null); } - + @Override protected void activeWithValue(TopComponent opened, Node selectedNode) { EMH emh = selectedNode.getLookup().lookup(EMH.class); ((AbstractModellingEMHTopComponent) opened).reloadWithEMHUid(emh.getUiId()); } - + @Override protected TopComponent openNew(Node selectedNode) { EMH emh = selectedNode.getLookup().lookup(EMH.class); @@ -41,18 +42,23 @@ top.setEMHUid(emh.getUiId()); return top; } - + public static void open(EMH emh, boolean reopen) { if (emh == null) { return; } - ModellingOpenEMHNodeAction action = new ModellingOpenEMHNodeAction(); + ModellingOpenEMHNodeAction action = null; + if (reopen) { + action = SystemAction.get(ModellingOpenEMHNodeAction.Reopen.class); + } else { + action = SystemAction.get(ModellingOpenEMHNodeAction.NewFrame.class); + } action.setReopen(reopen); AbstractNode node = new AbstractNode(Children.LEAF, Lookups.singleton(emh)); action.performAction(new Node[]{node}); - + } - + private AbstractModellingEMHTopComponent create(EMH emh) { EnumCatEMH catType = emh.getCatType(); switch (catType) { @@ -68,7 +74,7 @@ } throw new UnsupportedOperationException("Not supported yet."); } - + @Override protected String getMode(TopComponent top) { Class<? extends TopComponent> aClass = top.getClass(); @@ -85,10 +91,10 @@ if (ModellingEMHBrancheTopComponent.class.isAssignableFrom(aClass)) { return ModellingEMHBrancheTopComponent.MODE; } - + throw new UnsupportedOperationException("Not supported yet."); } - + @Override protected boolean isEnable(Node[] activatedNodes) { if (activatedNodes.length == 1) { @@ -100,17 +106,17 @@ } return false; } - + public static class Reopen extends ModellingOpenEMHNodeAction { - + public Reopen() { super(NbBundle.getMessage(ModellingOpenEMHNodeAction.class, "ModellingOpenEMHNodeAction.DisplayName")); setReopen(true); } } - + public static class NewFrame extends ModellingOpenEMHNodeAction { - + public NewFrame() { super(NbBundle.getMessage(ModellingOpenEMHNodeAction.class, "ModellingOpenEMHNodeAction.NewFrame.DisplayName")); setReopen(false); Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/calcul/Bundle.properties =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/calcul/Bundle.properties 2012-07-12 21:24:53 UTC (rev 7486) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/calcul/Bundle.properties 2012-07-12 21:33:07 UTC (rev 7487) @@ -22,6 +22,8 @@ HINT_ModellingScenarioORESTopComponent=Demandes de r\u00e9sultats CTL_ModellingModelePNUMTopComponent=Param\u00e8tres num\u00e9riques HINT_ModellingModelePNUMTopComponent=Param\u00e8tres num\u00e9riques +CTL_ModellingListCiniTopComponent=Conditions initiales +HINT_ModellingListCiniTopComponent=Conditions initiales CTL_ModellingScenarioPCALTopComponent=Param\u00e8tres calcul HINT_ModellingScenarioPCALTopComponent=Param\u00e8tres calcul Modified: trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/list/Bundle.properties =================================================================== --- trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/list/Bundle.properties 2012-07-12 21:24:53 UTC (rev 7486) +++ trunk/soft/fudaa-crue/ui-modelling/src/main/resources/org/fudaa/fudaa/crue/modelling/list/Bundle.properties 2012-07-12 21:33:07 UTC (rev 7487) @@ -35,8 +35,7 @@ HINT_ModellingListSectionAddTopComponent=Ajouter des sections ListTopComponent.SousModele.Label=Sous-mod\u00e8le: -CTL_ModellingListCiniTopComponent=Conditions initiales -HINT_ModellingListCiniTopComponent=Conditions initiales + Add.Name=Ajouter Paste.Name=Coller Delete.Name=Supprimer 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 2012-07-12 21:24:53 UTC (rev 7486) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/PlanimetryController.java 2012-07-12 21:33:07 UTC (rev 7487) @@ -48,7 +48,6 @@ PlanimetryVisuPanel visuPanel; Map<String, LayerController> controllersByName = new HashMap<String, LayerController>(); PlanimetryCalqueState state = new PlanimetryCalqueState(); - PlanimetryEMHEditor emhEditor; public PlanimetryEMHEditor getEmhEditor() { @@ -58,8 +57,6 @@ public void setEmhEditor(PlanimetryEMHEditor emhEditor) { this.emhEditor = emhEditor; } - - public void apply(VisuConfiguration cloned) { visuConfiguration = cloned; @@ -353,6 +350,14 @@ getTraceController().getLayer().setVisible(layerVisibility.isTraceVisible()); } + public boolean isEMHLayer(BCalque layer) { + return getBrancheController().getLayer() == layer + || getCasierController().getLayer() == layer + || getNodeController().getLayer() == layer + || getSectionController().getLayer() == layer + || getTraceController().getLayer() == layer; + } + public List<BCalque> getMainLayers() { List<BCalque> res = new ArrayList<BCalque>(); res.add(getBrancheController().getLayer()); Modified: trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/PlanimetryVisuPanelController.java =================================================================== --- trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/PlanimetryVisuPanelController.java 2012-07-12 21:24:53 UTC (rev 7486) +++ trunk/soft/fudaa-crue/ui-planimetry/src/main/java/org/fudaa/fudaa/crue/planimetry/controller/PlanimetryVisuPanelController.java 2012-07-12 21:33:07 UTC (rev 7487) @@ -11,13 +11,17 @@ import javax.swing.Action; import javax.swing.JComponent; import org.fudaa.ctulu.CtuluUI; +import org.fudaa.dodico.crue.metier.emh.EMH; +import org.fudaa.ebli.calque.BCalque; import org.fudaa.ebli.calque.BCalqueInteraction; +import org.fudaa.ebli.calque.ZCalqueSelectionInteractionSimple; import org.fudaa.ebli.calque.ZEbliCalquesPanel; import org.fudaa.ebli.commun.EbliActionInterface; import org.fudaa.ebli.commun.EbliActionPaletteAbstract; import org.fudaa.ebli.geometrie.GrBoite; import org.fudaa.fudaa.crue.planimetry.ConfigureUIAction; import org.fudaa.fudaa.crue.planimetry.PLanimetryDeplacementAction; +import org.fudaa.fudaa.crue.planimetry.PlanimetryVisuPanel; import org.fudaa.fudaa.crue.planimetry.action.DeleteEMHCascadeAction; import org.fudaa.fudaa.sig.layer.FSigVisuPanelController; @@ -25,7 +29,7 @@ * * @author deniger ( genesis) */ -public class PlanimetryVisuPanelController extends FSigVisuPanelController { +public class PlanimetryVisuPanelController extends FSigVisuPanelController implements ZCalqueSelectionInteractionSimple.EditorDelegate { Collection<String> useAsPalette = Arrays.asList("CHANGE_REFERENCE", "GLOBAL_MOVE"); Collection<String> useAsTab = Arrays.asList("INFOS", "PALETTE_EDTION"); @@ -51,7 +55,23 @@ } } }); + ZCalqueSelectionInteractionSimple selection = (ZCalqueSelectionInteractionSimple) getCalqueInteraction("cqSELECTION"); + selection.setEditorDelegate(this); + } + @Override + public String edit() { + BCalque calqueActif = getView().getScene().getCalqueActif(); + PlanimetryVisuPanel panel = (PlanimetryVisuPanel) getView(); + if (panel.getPlanimetryController().isEMHLayer(calqueActif) && panel.getPlanimetryController().getEmhEditor() != null) { + List<EMH> selectedEMHs = panel.getSelectedEMHs(); + if (selectedEMHs != null && selectedEMHs.size() == 1) { + panel.getPlanimetryController().getEmhEditor().edit(selectedEMHs.get(0), true); + } + return null; + } + + return getVisuPanel().getEditor().edit(); } DeleteEMHCascadeAction deleteCascadeAction; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |