|
From: <bma...@us...> - 2011-06-06 16:34:56
|
Revision: 6275
http://fudaa.svn.sourceforge.net/fudaa/?rev=6275&view=rev
Author: bmarchan
Date: 2011-06-06 16:34:49 +0000 (Mon, 06 Jun 2011)
Log Message:
-----------
Outils externes : Add nouveau importers + gestion undo/redo
Modified Paths:
--------------
trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigInpFileParam.java
trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigManageExeTools.java
trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigOutFileParam.java
trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/wizard/FSigFileLoaderGIS.java
Removed Paths:
-------------
trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigFileExporterMascaretGEO2d.java
trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigFileExporterRubarSt.java
Deleted: trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigFileExporterMascaretGEO2d.java
===================================================================
--- trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigFileExporterMascaretGEO2d.java 2011-06-06 16:32:37 UTC (rev 6274)
+++ trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigFileExporterMascaretGEO2d.java 2011-06-06 16:34:49 UTC (rev 6275)
@@ -1,30 +0,0 @@
-/*
- * To change this template, choose Tools | Templates
- * and open the template in the editor.
- */
-package org.fudaa.fudaa.sig.exetools;
-
-import java.io.File;
-import org.fudaa.ctulu.CtuluIOOperationSynthese;
-import org.fudaa.ctulu.CtuluUI;
-import org.fudaa.ctulu.ProgressionInterface;
-import org.fudaa.ctulu.fileformat.FileFormat;
-import org.fudaa.ctulu.gis.GISZoneCollection;
-import org.fudaa.dodico.mascaret.io.MascaretGEO2dFileFormat;
-
-/**
- * Un exporter des calques pour Mascaret 2D geo.
- * @author mar...@de...
- */
-public class FSigFileExporterMascaretGEO2d implements FSigFileExporterI {
-
- public FileFormat getFileFormat() {
- return MascaretGEO2dFileFormat.getInstance();
- }
-
- public CtuluIOOperationSynthese exportTo(GISZoneCollection[] _cols, CtuluUI _impl, File _file, ProgressionInterface _prog) {
- System.out.println("Fichier d'entr\xE9e "+_file);
- return null;
- }
-
-}
Deleted: trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigFileExporterRubarSt.java
===================================================================
--- trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigFileExporterRubarSt.java 2011-06-06 16:32:37 UTC (rev 6274)
+++ trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigFileExporterRubarSt.java 2011-06-06 16:34:49 UTC (rev 6275)
@@ -1,30 +0,0 @@
-/*
- * To change this template, choose Tools | Templates
- * and open the template in the editor.
- */
-package org.fudaa.fudaa.sig.exetools;
-
-import java.io.File;
-import org.fudaa.ctulu.CtuluIOOperationSynthese;
-import org.fudaa.ctulu.CtuluUI;
-import org.fudaa.ctulu.ProgressionInterface;
-import org.fudaa.ctulu.fileformat.FileFormat;
-import org.fudaa.ctulu.gis.GISZoneCollection;
-import org.fudaa.dodico.rubar.io.RubarStCnFileFormat;
-
-/**
- * Un exporter des calques pour Rubar.
- * @author mar...@de...
- */
-public class FSigFileExporterRubarSt implements FSigFileExporterI {
-
- public FileFormat getFileFormat() {
- return RubarStCnFileFormat.getInstance();
- }
-
- public CtuluIOOperationSynthese exportTo(GISZoneCollection[] _cols, CtuluUI _impl, File _file, ProgressionInterface _prog) {
- System.out.println("Fichier d'entr\xE9e "+_file);
- return null;
- }
-
-}
Modified: trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigInpFileParam.java
===================================================================
--- trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigInpFileParam.java 2011-06-06 16:32:37 UTC (rev 6274)
+++ trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigInpFileParam.java 2011-06-06 16:34:49 UTC (rev 6275)
@@ -189,7 +189,7 @@
@Override
public String getSetCellText() {
- return valSet==null ? "":FSigLib.getS("<D\xE9fini>");
+ return valSet==null ? "":FSigLib.getS("[ {0} calque(s) s\xE9lectionn\xE9(s) ]",""+valSet.split("\\|").length);
}
@Override
Modified: trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigManageExeTools.java
===================================================================
--- trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigManageExeTools.java 2011-06-06 16:32:37 UTC (rev 6274)
+++ trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigManageExeTools.java 2011-06-06 16:34:49 UTC (rev 6275)
@@ -4,6 +4,7 @@
*/
package org.fudaa.fudaa.sig.exetools;
+import org.fudaa.ctulu.CtuluCommandManager;
import org.fudaa.ebli.calque.BGroupeCalque;
import org.fudaa.fudaa.commun.exetools.FudaaManageExeTools;
import org.fudaa.fudaa.commun.impl.FudaaCommonImplementation;
@@ -16,6 +17,7 @@
public FSigManageExeTools(FudaaCommonImplementation _impl) {
FSigInpFileParam.setCtuluUI(_impl);
+ FSigOutFileParam.setCtuluUI(_impl);
}
@Override
@@ -29,4 +31,8 @@
FSigInpFileParam.setRoot(_cq);
FSigOutFileParam.setRoot(_cq);
}
+
+ public void setCommandManager(CtuluCommandManager _mng) {
+ FSigOutFileParam.setCommandManager(_mng);
+ }
}
Modified: trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigOutFileParam.java
===================================================================
--- trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigOutFileParam.java 2011-06-06 16:32:37 UTC (rev 6274)
+++ trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/exetools/FSigOutFileParam.java 2011-06-06 16:34:49 UTC (rev 6275)
@@ -12,6 +12,7 @@
import javax.swing.table.TableCellEditor;
import org.fudaa.ctulu.CtuluAnalyze;
import org.fudaa.ctulu.CtuluCommandManager;
+import org.fudaa.ctulu.CtuluUI;
import org.fudaa.ctulu.ProgressionDetailedInterface;
import org.fudaa.ctulu.ProgressionInterface;
import org.fudaa.ctulu.gui.CtuluDialogPanel;
@@ -21,9 +22,16 @@
import org.fudaa.fudaa.commun.exetools.FudaaExeTool.ParamI;
import org.fudaa.fudaa.sig.FSigGeomSrcData;
import org.fudaa.fudaa.sig.wizard.FSigFileLoadResult;
+import org.fudaa.fudaa.sig.wizard.FSigFileLoaderGIS;
import org.fudaa.fudaa.sig.wizard.FSigFileLoaderI;
import org.fudaa.fudaa.sig.wizard.FSigFileLoaderMascaret;
+import org.fudaa.fudaa.sig.wizard.FSigFileLoaderRefluxRefondeResult;
+import org.fudaa.fudaa.sig.wizard.FSigFileLoaderRubarCox;
+import org.fudaa.fudaa.sig.wizard.FSigFileLoaderRubarInx;
+import org.fudaa.fudaa.sig.wizard.FSigFileLoaderRubarSem;
import org.fudaa.fudaa.sig.wizard.FSigFileLoaderRubarSt;
+import org.fudaa.fudaa.sig.wizard.FSigFileLoaderSerafin;
+import org.fudaa.fudaa.sig.wizard.FSigFileLoaderSinusX;
/**
* Un param\xE8tre fichier de sortie construit a partir de calques s\xE9lectionn\xE9s.
@@ -32,17 +40,42 @@
public class FSigOutFileParam extends ParamI {
/** Les exporters pour ce type de parametre */
private static FSigFileLoaderI[] loaders_={
+ new FSigFileLoaderRubarSt(),
+ new FSigFileLoaderGIS.GML(),
+ new FSigFileLoaderGIS.Shape(),
+ new FSigFileLoaderGIS.MIF(),
+ new FSigFileLoaderSinusX(),
new FSigFileLoaderMascaret(),
- new FSigFileLoaderRubarSt()
+ new FSigFileLoaderSerafin(),
+ new FSigFileLoaderRubarCox(),
+ new FSigFileLoaderRubarInx(),
+ new FSigFileLoaderRubarSem(),
+ new FSigFileLoaderRefluxRefondeResult()
+
};
/** Les noms associ\xE9es. Ne pas modifier ces noms, ils sont sauv\xE9s dans les pr\xE9f\xE9rences */
private static String[] loadNames_={
+ "RubarSt",
+ "GML",
+ "Shape",
+ "MIF",
+ "SinusX",
"Mascaret2d",
- "RubarSt"
+ "Serafin",
+ "RubarCox",
+ "RubarInx",
+ "RubarSem",
+ "SOV"
};
+
+ static {
+
+ }
/** Le root calque pour les fichiers de sortie. */
private static BGroupeCalque root_;
+ private static CtuluUI ui_;
+ private static CtuluCommandManager mng_;
private String value;
private int numLoader;
@@ -99,8 +132,8 @@
// Chargement par la fenetre de destination
ParamOutFilePostPanel pn=new ParamOutFilePostPanel(res.createData());
- if (pn.afficheModaleOk(null,FudaaLib.getS("Destination des donn\xE9es du fichier {0}",getValParam()))) {
- pn.doAtEnd(_prog, null);
+ if (pn.afficheModaleOk(ui_.getParentComponent(),FudaaLib.getS("Destination des donn\xE9es du fichier {0}",getValParam()))) {
+ pn.doAtEnd(_prog, mng_);
}
@@ -166,6 +199,14 @@
root_=_root;
}
+ public static void setCtuluUI(CtuluUI _ui) {
+ ui_=_ui;
+ }
+
+ public static void setCommandManager(CtuluCommandManager _mng) {
+ mng_=_mng;
+ }
+
@Override
public String getDefinitionCellText() {
return getLabel() + "/" + FudaaLib.getS("Type={0}", value);
Modified: trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/wizard/FSigFileLoaderGIS.java
===================================================================
--- trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/wizard/FSigFileLoaderGIS.java 2011-06-06 16:32:37 UTC (rev 6274)
+++ trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/wizard/FSigFileLoaderGIS.java 2011-06-06 16:34:49 UTC (rev 6275)
@@ -25,9 +25,12 @@
import org.fudaa.ctulu.ProgressionInterface;
import org.fudaa.ctulu.gis.GISAttributeConstants;
import org.fudaa.ctulu.gis.GISDataModelAttributeAdapter;
-import org.fudaa.ctulu.gis.GISDataModelListPtAdapter;
import org.fudaa.ctulu.gis.GISGeometry;
import org.fudaa.ctulu.gis.GISVisitorDefault;
+import org.fudaa.ctulu.gis.factory.GISExportDataStoreFactory;
+import org.fudaa.ctulu.gis.gml.GMLDataStoreFactory;
+import org.fudaa.ctulu.gis.mif.MIFDataStoreFactory;
+import org.fudaa.ctulu.gis.shapefile.ShapefileDataStoreFactory;
import org.fudaa.fudaa.sig.FSigLib;
@@ -37,6 +40,33 @@
*/
public class FSigFileLoaderGIS implements FSigFileLoaderI {
+ /**
+ * Un loader pour un fichier MID/MIF.
+ */
+ public static class MIF extends FSigFileLoaderGIS {
+ public MIF() {
+ super (new MIFDataStoreFactory());
+ }
+ }
+
+ /**
+ * Un loader pour un fichier Shape.
+ */
+ public static class Shape extends FSigFileLoaderGIS {
+ public Shape() {
+ super (new ShapefileDataStoreFactory());
+ }
+ }
+
+ /**
+ * Un loader pour un fichier GML.
+ */
+ public static class GML extends FSigFileLoaderGIS {
+ public GML() {
+ super (new GMLDataStoreFactory());
+ }
+ }
+
final BuFileFilter ft_;
final FileDataStoreFactorySpi factory_;
transient FSigDataModelStoreAdapter src_;
@@ -49,6 +79,15 @@
ft_ = _ft;
factory_ = _factory;
}
+
+ /**
+ * Cr\xE9ation a partir de la seule fabrique
+ * @param _factory La fabrique.
+ */
+ public FSigFileLoaderGIS(final FileDataStoreFactorySpi _factory) {
+ factory_=_factory;
+ ft_=GISExportDataStoreFactory.buildFileFilterFor(_factory);
+ }
public FSigFileLoaderI createNew() {
return new FSigFileLoaderGIS(ft_, factory_);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|