|
From: <bma...@us...> - 2015-01-27 14:52:30
|
Revision: 8995
http://sourceforge.net/p/fudaa/svn/8995
Author: bmarchan
Date: 2015-01-27 14:52:27 +0000 (Tue, 27 Jan 2015)
Log Message:
-----------
Export des images sources et transform?\195?\169es
Modified Paths:
--------------
trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivImplementation.java
Added Paths:
-----------
trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivExportImageFilesPanel.java
trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/action/PivExportImagesAction.java
Removed Paths:
-------------
trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivExportTranfFilesPanel.java
trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/action/PivExportTransfImagesAction.java
Copied: trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivExportImageFilesPanel.java (from rev 8994, trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivExportTranfFilesPanel.java)
===================================================================
--- trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivExportImageFilesPanel.java (rev 0)
+++ trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivExportImageFilesPanel.java 2015-01-27 14:52:27 UTC (rev 8995)
@@ -0,0 +1,232 @@
+/*
+ * @creation 18 d\xE9c. 2008
+ * @modification $Date:$
+ * @license GNU General Public License 2
+ * @copyright (c)1998-2008 CETMEF 2 bd Gambetta F-60231 Compiegne
+ * @mail fud...@li...
+ */
+package org.fudaa.fudaa.piv;
+
+import java.awt.BorderLayout;
+import java.awt.event.ItemEvent;
+import java.awt.event.ItemListener;
+import java.io.File;
+import java.util.List;
+
+import javax.swing.ButtonGroup;
+import javax.swing.JComboBox;
+import javax.swing.JFileChooser;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JRadioButton;
+
+import org.fudaa.ctulu.CtuluUI;
+import org.fudaa.ctulu.gui.CtuluCellTextRenderer;
+import org.fudaa.ctulu.gui.CtuluDialogPanel;
+import org.fudaa.ctulu.gui.CtuluFileChooserPanel;
+import org.fudaa.ctulu.gui.CtuluListEditorModel;
+import org.fudaa.ctulu.gui.CtuluListEditorPanel;
+import org.fudaa.ctulu.image.CtuluImageExport;
+
+import com.memoire.bu.BuVerticalLayout;
+
+/**
+ * Un panneau pour exporter les images transform\xE9es pgm ou autres vers un r\xE9pertoire choisi.
+ *
+ * @author mar...@de...
+ * @version $Id$
+ */
+public class PivExportImageFilesPanel extends CtuluDialogPanel {
+
+ private CtuluUI ui_;
+ /** Le repertoire d'export. */
+ private CtuluFileChooserPanel fcDirExport_;
+ /** Le mod\xE8le pour la liste des images */
+ private CtuluListEditorModel mdFiles_;
+ /** La liste des images */
+ private CtuluListEditorPanel pnFiles_;
+ /** toutes les images */
+ private JRadioButton rbAllFiles_;
+ /** Une selection des images */
+ private JRadioButton rbSelectedImages_;
+ /** Format d'export */
+ private JComboBox cbFormat_;
+
+ /**
+ * Constructeur.
+ * @param _ui Le parent pour la boite de dialogue.
+ * @param _originalFormatSupported
+ */
+ public PivExportImageFilesPanel(CtuluUI _ui) {
+ ui_=_ui;
+
+ setLayout(new BuVerticalLayout(5, true, true));
+ setHelpText(PivResource.getS("S\xE9lectionnez les images que vous souhaitez exporter, puis le format d'export."));
+
+ fcDirExport_=new CtuluFileChooserPanel(PivResource.getS("R\xE9pertoire destination"));
+ fcDirExport_.setFileSelectMode(JFileChooser.DIRECTORIES_ONLY);
+ fcDirExport_.setWriteMode(false);
+ JPanel pnDirExport=CtuluFileChooserPanel.buildPanel(fcDirExport_, PivResource.getS("R\xE9pertoire destination"));
+
+ // Liste des images
+ mdFiles_=new CtuluListEditorModel(true) {
+ @Override
+ public boolean isCellEditable(int _rowIndex, int _columnIndex) {
+ return false;
+ }
+ @Override
+ public Object createNewObject() {
+ return null;
+ }
+ };
+
+ pnFiles_=new CtuluListEditorPanel(mdFiles_, false, false, false, false, false) {
+ @Override
+ public void actionAdd() {
+ }
+ };
+
+ pnFiles_.setValueListCellRenderer(new CtuluCellTextRenderer() {
+ @Override
+ public void setValue(Object _file) {
+ File f=(File)_file;
+ setText(f.getName());
+ }
+ });
+
+ rbAllFiles_=new JRadioButton(PivResource.getS("Toutes les images"));
+ rbAllFiles_.addItemListener(new ItemListener() {
+
+ @Override
+ public void itemStateChanged(ItemEvent e) {
+ pnFiles_.setAllEnabled(!rbAllFiles_.isSelected());
+ }
+ });
+ rbSelectedImages_=new JRadioButton(PivResource.getS("Les images s\xE9lectionn\xE9es"));
+
+ ButtonGroup bg=new ButtonGroup();
+ bg.add(rbAllFiles_);
+ bg.add(rbSelectedImages_);
+
+ rbAllFiles_.setSelected(true);
+
+ cbFormat_=new JComboBox();
+ // 2 formats suppl\xE9mentaires
+ cbFormat_.addItem(PivResource.getS("<d'origine>"));
+ cbFormat_.addItem("pgm");
+ List<String> exts=CtuluImageExport.FORMAT_LIST;
+ for (String ext : exts) {
+ cbFormat_.addItem(ext);
+ }
+
+ JPanel pnFormat=new JPanel();
+ pnFormat.setLayout(new BorderLayout(3,3));
+ pnFormat.add(new JLabel(PivResource.getS("Format d'export")),BorderLayout.WEST);
+ pnFormat.add(cbFormat_,BorderLayout.CENTER);
+
+ add(rbAllFiles_);
+ add(rbSelectedImages_);
+ add(pnFiles_);
+ add(pnFormat);
+ add(pnDirExport);
+ }
+
+ @Override
+ public void setValue(Object _files) {
+ if (!(_files instanceof File[]))
+ throw new IllegalArgumentException("bad type parameter");
+ setFiles((File[])_files);
+ }
+
+ @Override
+ public File[] getValue() {
+ return getFiles();
+ }
+
+ /**
+ * D\xE9finit l'utilitaire \xE0 modifier.
+ * @param _tool L'utilitaire
+ */
+ public void setFiles(File[] _files) {
+ if (_files==null) return;
+
+ mdFiles_.setData(_files);
+ }
+
+ /**
+ * @return Les fichiers image.
+ */
+ public File[] getFiles() {
+ File[] files=new File[mdFiles_.getRowCount()];
+ mdFiles_.getValues(files);
+
+ return files;
+ }
+
+ /**
+ * @return Les fichiers selectionn\xE9s de la liste, ou tous les fichiers si le bouton radio
+ * "toutes images" est activ\xE9.
+ */
+ public File[] getSelectedFiles() {
+ if (rbAllFiles_.isSelected()) {
+ return getFiles();
+ }
+ else {
+ int[] selind=pnFiles_.getTable().getSelectedRows();
+ File[] files=new File[selind.length];
+ for (int i=0; i<selind.length; i++) {
+ files[i]=(File)mdFiles_.getValueAt(selind[i]);
+ }
+ return files;
+ }
+ }
+
+ /**
+ * @return Le repertoire destination
+ */
+ public File getDestinationDir() {
+ return fcDirExport_.getFile();
+ }
+
+ /**
+ * @return Le format d'export. ORIGIN si le format d'origine est autoris\xE9.
+ */
+ public String getFormat() {
+ if (cbFormat_.getSelectedIndex()==0) {
+ return "ORIGIN";
+ }
+ return (String)cbFormat_.getSelectedItem();
+ }
+
+ @Override
+ public boolean isDataValid() {
+ if (getSelectedFiles().length==0) {
+ setErrorText(PivResource.getS("Pas d'image \xE0 transf\xE9rer ou aucune image s\xE9lectionn\xE9e"));
+ return false;
+ }
+ File dir=fcDirExport_.getFile();
+ if (dir==null || !dir.exists() || !dir.canWrite()) {
+ setErrorText(PivResource.getS("Le r\xE9pertoire de destination n'est pas d\xE9fini ou est inaccessible"));
+ return false;
+ }
+ return true;
+ }
+
+ @Override
+ public void apply() {
+ setErrorText("");
+ super.apply();
+ }
+
+ @Override
+ public boolean cancel() {
+ setErrorText("");
+ return super.cancel();
+ }
+
+ @Override
+ public boolean ok() {
+ setErrorText("");
+ return super.ok();
+ }
+}
Deleted: trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivExportTranfFilesPanel.java
===================================================================
--- trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivExportTranfFilesPanel.java 2015-01-23 14:32:27 UTC (rev 8994)
+++ trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivExportTranfFilesPanel.java 2015-01-27 14:52:27 UTC (rev 8995)
@@ -1,137 +0,0 @@
-/*
- * @creation 18 d\xE9c. 2008
- * @modification $Date:$
- * @license GNU General Public License 2
- * @copyright (c)1998-2008 CETMEF 2 bd Gambetta F-60231 Compiegne
- * @mail fud...@li...
- */
-package org.fudaa.fudaa.piv;
-
-import java.io.File;
-
-import javax.swing.JFileChooser;
-import javax.swing.JLabel;
-
-import org.fudaa.ctulu.CtuluUI;
-import org.fudaa.ctulu.gui.CtuluCellTextRenderer;
-import org.fudaa.ctulu.gui.CtuluDialogPanel;
-import org.fudaa.ctulu.gui.CtuluFileChooser;
-import org.fudaa.ctulu.gui.CtuluFileChooserPanel;
-import org.fudaa.ctulu.gui.CtuluListEditorModel;
-import org.fudaa.ctulu.gui.CtuluListEditorPanel;
-
-import com.memoire.bu.BuVerticalLayout;
-
-/**
- * Un panneau pour exporter les images transform\xE9es pgm ou autres vers un r\xE9pertoire choisi.
- *
- * @author mar...@de...
- * @version $Id$
- */
-public class PivExportTranfFilesPanel extends CtuluDialogPanel {
-
- private CtuluUI ui_;
- /** Le repertoire racine du projet */
- private File prjRoot_;
- /** Le repertoire d'export. */
- private CtuluFileChooserPanel fcDirExport_;
- /** Le mod\xE8le pour la liste des images */
- private CtuluListEditorModel mdFiles_;
-
- /**
- * Constructeur.
- * @param _ui Le parent pour la boite de dialogue.
- */
- public PivExportTranfFilesPanel(CtuluUI _ui) {
- ui_=_ui;
-
- setLayout(new BuVerticalLayout(5, true, true));
- setHelpText(PivResource.getS("Selectionner les images que vous souhaitez exporter."));
-
- fcDirExport_=new CtuluFileChooserPanel();
- fcDirExport_.setFileSelectMode(JFileChooser.DIRECTORIES_ONLY);
- add(fcDirExport_);
-
- // Label images
- add(new JLabel(PivResource.getS("Liste des images"),JLabel.LEFT));
-
- // Liste des images
- mdFiles_=new CtuluListEditorModel(true) {
- @Override
- public boolean isCellEditable(int _rowIndex, int _columnIndex) {
- return false;
- }
- @Override
- public Object createNewObject() {
- return null;
- }
- };
-
- CtuluListEditorPanel pnFiles=new CtuluListEditorPanel(mdFiles_, true, true, false) {
- @Override
- public void actionAdd() {
- }
- };
-
- pnFiles.setValueListCellRenderer(new CtuluCellTextRenderer() {
- @Override
- public void setValue(Object _file) {
- File f=(File)_file;
- setText(f.getName());
- if (f.getPath().startsWith(prjRoot_.getPath())) {
- setToolTipText(PivResource.getS("Dans le projet"));
- }
- else {
- setToolTipText(f.getPath());
- }
- }
- });
-
- add(pnFiles);
- }
-
- @Override
- public void setValue(Object _files) {
- if (!(_files instanceof File[]))
- throw new IllegalArgumentException("bad type parameter");
- setFiles((File[])_files);
- }
-
- @Override
- public File[] getValue() {
- return getFiles();
- }
-
- /**
- * Definit la racine du projet, pour savoir si un fichier fait d\xE9j\xE0 partie du projet.
- * @param _root La racine du projet.
- */
- public void setRootProject(File _root) {
- prjRoot_=_root;
- }
-
- /**
- * D\xE9finit l'utilitaire \xE0 modifier.
- * @param _tool L'utilitaire
- */
- public void setFiles(File[] _files) {
- if (_files==null) return;
-
- mdFiles_.setData(_files);
- }
-
- /**
- * @return Les fichiers image, comportant les anciens et nouveaux fichiers.
- */
- public File[] getFiles() {
- File[] files=new File[mdFiles_.getRowCount()];
- mdFiles_.getValues(files);
-
- return files;
- }
-
- @Override
- public boolean isDataValid() {
- return true;
- }
-}
Modified: trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivImplementation.java
===================================================================
--- trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivImplementation.java 2015-01-23 14:32:27 UTC (rev 8994)
+++ trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/PivImplementation.java 2015-01-27 14:52:27 UTC (rev 8995)
@@ -42,7 +42,7 @@
import org.fudaa.fudaa.piv.action.PivComputeFlowAction;
import org.fudaa.fudaa.piv.action.PivComputeLaunchAction;
import org.fudaa.fudaa.piv.action.PivComputeParamAction;
-import org.fudaa.fudaa.piv.action.PivExportTransfImagesAction;
+import org.fudaa.fudaa.piv.action.PivExportImagesAction;
import org.fudaa.fudaa.piv.action.PivFlowParamAction;
import org.fudaa.fudaa.piv.action.PivImportGRPAction;
import org.fudaa.fudaa.piv.action.PivImportGridAction;
@@ -222,6 +222,7 @@
setEnabledForAction("SHOW_VELOCITIES_RESULTS", bprjOpen && project.getAverageResults()!=null);
setEnabledForAction("SHOW_FLOW_RESULTS", bprjOpen && project.getFlowResults()!=null);
setEnabledForAction("EXPORT_TRANSF_IMAGES", bprjOpen && bprjHasTransfImg);
+ setEnabledForAction("EXPORT_SRC_IMAGES", bprjOpen && bprjHasSrcImg);
refreshTitle();
}
@@ -818,7 +819,8 @@
super.initExportImageToClipborad(itExportImageToClip);
mnExport.add(itExportImageToClip);
mnExport.addSeparator();
- mnExport.add(new PivExportTransfImagesAction(this));
+ mnExport.add(new PivExportImagesAction(this,true));
+ mnExport.add(new PivExportImagesAction(this,false));
}
/**
Copied: trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/action/PivExportImagesAction.java (from rev 8994, trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/action/PivExportTransfImagesAction.java)
===================================================================
--- trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/action/PivExportImagesAction.java (rev 0)
+++ trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/action/PivExportImagesAction.java 2015-01-27 14:52:27 UTC (rev 8995)
@@ -0,0 +1,169 @@
+/*
+ * @creation 3 juil. 2008
+ * @modification $Date:$
+ * @license GNU General Public License 2
+ * @copyright (c)1998-2008 CETMEF 2 bd Gambetta F-60231 Compiegne
+ * @mail fud...@li...
+ */
+package org.fudaa.fudaa.piv.action;
+
+import java.awt.event.ActionEvent;
+import java.awt.image.BufferedImage;
+import java.io.File;
+import java.io.IOException;
+
+import javax.imageio.ImageIO;
+
+import org.fudaa.ctulu.CtuluLibFile;
+import org.fudaa.ctulu.gui.CtuluDialog;
+import org.fudaa.ctulu.gui.CtuluTaskOperationGUI;
+import org.fudaa.ctulu.image.CtuluImageExport;
+import org.fudaa.ebli.commun.EbliActionSimple;
+import org.fudaa.fudaa.piv.PivExportImageFilesPanel;
+import org.fudaa.fudaa.piv.PivImplementation;
+import org.fudaa.fudaa.piv.PivProgressionPanel;
+import org.fudaa.fudaa.piv.PivResource;
+import org.fudaa.fudaa.piv.imageio.PivPGMWriter;
+
+import com.memoire.fu.FuLog;
+
+/**
+ * Une action pour eporter les images transform\xE9es ou sources
+ *
+ * @author Bertrand Marchand (mar...@de...)
+ * @version $Id$
+ */
+public class PivExportImagesAction extends EbliActionSimple {
+ PivImplementation impl;
+ PivExportImageFilesPanel pnExportImages;
+ CtuluDialog diProgress_;
+ boolean exportSrc_;
+
+ static final String TXTEXPORTERSRC=PivResource.getS("Exporter les images sources");
+ static final String TXTEXPORTERTRANSF=PivResource.getS("Exporter les images transform\xE9es");
+ static final String TXTEXPORTSRC=PivResource.getS("Export des images sources");
+ static final String TXTEXPORTTRANSF=PivResource.getS("Export des images transform\xE9es");
+
+ /**
+ * Constructeur.
+ * @param _impl L'implementation.
+ */
+ public PivExportImagesAction(PivImplementation _impl, boolean _exportSrc) {
+ super((_exportSrc ? TXTEXPORTERSRC:TXTEXPORTERTRANSF)+"...", null, _exportSrc ? "EXPORT_TRANSF_IMAGES":"EXPORT_SRC_IMAGES");
+ exportSrc_=_exportSrc;
+
+ impl=_impl;
+ setEnabled(false);
+ }
+
+ /**
+ * Exporte les images transform\xE9es au format pgm.
+ * @param _e L'evenement pour l'action.
+ */
+ @Override
+ public void actionPerformed(final ActionEvent _e) {
+ if (!isValide()) {
+ return;
+ }
+
+ // Selection des images
+ if (pnExportImages==null)
+ pnExportImages = new PivExportImageFilesPanel(impl);
+
+ if (exportSrc_) {
+ pnExportImages.setFiles(impl.getCurrentProject().getSrcImageFiles());
+ }
+ else {
+ pnExportImages.setFiles(impl.getCurrentProject().getTransfImageFiles());
+ }
+ if (!pnExportImages.afficheModaleOk(impl.getFrame(), (exportSrc_ ? TXTEXPORTERSRC:TXTEXPORTERTRANSF), CtuluDialog.OK_CANCEL_OPTION)) {
+ return;
+ }
+
+ // Export des images, eventuellement dans un autre format.
+ CtuluTaskOperationGUI r=new CtuluTaskOperationGUI(impl, (exportSrc_ ? TXTEXPORTSRC:TXTEXPORTTRANSF)) {
+
+ @Override
+ public void act() {
+ try {
+ this.setDesc((exportSrc_ ? TXTEXPORTSRC:TXTEXPORTTRANSF));
+ this.setProgression(0);
+
+ File[] exportImgFiles=pnExportImages.getSelectedFiles();
+ File destinationDir=pnExportImages.getDestinationDir();
+ // Correspond aux extensions
+ String format=pnExportImages.getFormat();
+
+ for (int i=0; i<exportImgFiles.length; i++) {
+ File cacheFile=impl.getCurrentProject().getCacheImageFile(exportImgFiles[i]);
+ // Chaque image dans sont format d'origine
+ if (format.equals("ORIGIN")) {
+ File destFile=new File(destinationDir,exportImgFiles[i].getName());
+ String ext=CtuluLibFile.getExtension(exportImgFiles[i].getName());
+
+ if (exportImgFiles.equals(cacheFile)) {
+ CtuluLibFile.copyFile(cacheFile, destFile);
+ }
+ else {
+ BufferedImage img = ImageIO.read(cacheFile);
+ if (ext.equals("pgm")) {
+ new PivPGMWriter().write(destFile, img);
+ }
+ else {
+ CtuluImageExport.export(img, destFile, ext, impl);
+ }
+ }
+ }
+ else {
+ File destFile=CtuluLibFile.changeExtension(new File(destinationDir,exportImgFiles[i].getName()),format);
+
+ // Le format d'export est le m\xEAme que le format de stockage
+ if (format.equals(CtuluLibFile.getExtension(cacheFile.getName()))) {
+ CtuluLibFile.copyFile(cacheFile, destFile);
+ }
+ // Sinon, transfert du format de stockage vers format d'export.
+ else {
+ BufferedImage img = ImageIO.read(cacheFile);
+ if (format.equals("pgm")) {
+ new PivPGMWriter().write(destFile, img);
+ }
+ else {
+ CtuluImageExport.export(img, destFile, format, impl);
+ }
+ }
+ }
+ setProgression(((i+1)*100)/exportImgFiles.length);
+ if (this.isStopRequested()) return;
+ }
+ }
+ catch (IOException e) {
+ FuLog.error("Erreur lors de l'export des images");
+ }
+ finally {
+ diProgress_.dispose();
+ }
+ }
+ };
+
+ PivProgressionPanel pnProgress_=new PivProgressionPanel(r);
+ diProgress_ = pnProgress_.createDialog(impl.getParentComponent());
+ diProgress_.setOption(CtuluDialog.ZERO_OPTION);
+ diProgress_.setDefaultCloseOperation(CtuluDialog.DO_NOTHING_ON_CLOSE);
+ diProgress_.setTitle(r.getName());
+
+ r.start();
+ diProgress_.afficheDialogModal();
+ }
+
+ /**
+ * @return true Si toutes les donn\xE9es sont pr\xE9sentes pour un lancement.
+ */
+ public boolean isValide() {
+ return true;
+ }
+
+ @Override
+ public String getEnableCondition() {
+ return PivResource.getS("Les images doivent exister");
+ }
+}
Deleted: trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/action/PivExportTransfImagesAction.java
===================================================================
--- trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/action/PivExportTransfImagesAction.java 2015-01-23 14:32:27 UTC (rev 8994)
+++ trunk/soft/fudaa-lspiv/src/main/java/org/fudaa/fudaa/piv/action/PivExportTransfImagesAction.java 2015-01-27 14:52:27 UTC (rev 8995)
@@ -1,126 +0,0 @@
-/*
- * @creation 3 juil. 2008
- * @modification $Date:$
- * @license GNU General Public License 2
- * @copyright (c)1998-2008 CETMEF 2 bd Gambetta F-60231 Compiegne
- * @mail fud...@li...
- */
-package org.fudaa.fudaa.piv.action;
-
-import java.awt.event.ActionEvent;
-import java.io.File;
-
-import org.fudaa.ctulu.CtuluAnalyze;
-import org.fudaa.ctulu.gui.CtuluDialog;
-import org.fudaa.ctulu.gui.CtuluTaskOperationGUI;
-import org.fudaa.ebli.commun.EbliActionSimple;
-import org.fudaa.fudaa.piv.PivExePanel;
-import org.fudaa.fudaa.piv.PivExportTranfFilesPanel;
-import org.fudaa.fudaa.piv.PivImplementation;
-import org.fudaa.fudaa.piv.PivManageOriginalFilesPanel;
-import org.fudaa.fudaa.piv.PivPreferences;
-import org.fudaa.fudaa.piv.PivProgressionPanel;
-import org.fudaa.fudaa.piv.PivResource;
-import org.fudaa.fudaa.piv.PivVisuPanel;
-import org.fudaa.fudaa.piv.io.PivExeLauncher;
-
-/**
- * Une action pour eporter les images transform\xE9es.
- *
- * @author Bertrand Marchand (mar...@de...)
- * @version $Id$
- */
-public class PivExportTransfImagesAction extends EbliActionSimple {
- PivImplementation impl;
- PivExportTranfFilesPanel pnExportImages;
- CtuluDialog diProgress_;
-
- /**
- * Constructeur.
- * @param _impl L'implementation.
- */
- public PivExportTransfImagesAction(PivImplementation _impl) {
- super(PivResource.getS("Export des images transform\xE9es..."), null, "EXPORT_TRANSF_IMAGES");
-
- impl=_impl;
- setEnabled(false);
- }
-
- /**
- * Exporte les images transform\xE9es au format pgm.
- * @param _e L'evenement pour l'action.
- */
- @Override
- public void actionPerformed(final ActionEvent _e) {
- if (!isValide()) {
- return;
- }
-
-// if (!PivExeLauncher.instance().areExeOK()) {
-// PivExePanel pnExe = new PivExePanel();
-//
-// // TODO BM : Verifier que les nouvelles images sont compatibles avec les donn\xE9es d'ortho ou message.
-//
-// if (!pnExe.afficheModaleOk(impl.getFrame(), PivResource.getS("R\xE9pertoire contenant les executables"))) {
-// return;
-// }
-// }
-
- // Selection des images
- if (pnExportImages==null)
- pnExportImages = new PivExportTranfFilesPanel(impl);
- pnExportImages.setRootProject(impl.getCurrentProject().getRoot());
- pnExportImages.setFiles(impl.getCurrentProject().getTransfImageFiles());
- if (!pnExportImages.afficheModaleOk(impl.getFrame(), PivResource.getS("Export des images"), CtuluDialog.OK_CANCEL_OPTION)) {
- return;
- }
-
- final File[] exportImgFiles=pnExportImages.getFiles();
-
-// // Le reconditionnement des images.
-// CtuluTaskOperationGUI r=new CtuluTaskOperationGUI(impl, PivResource.getS("Traitement des images sources")) {
-//
-// @Override
-// public void act() {
-// try {
-// CtuluAnalyze ana=new CtuluAnalyze();
-// ana.setDesc(getName());
-// impl.getCurrentProject().setSrcImagesFiles(exportImgFiles, this, ana);
-//
-// if (ana.containsErrorOrFatalError()) {
-// impl.error(ana.getResume());
-// return;
-// }
-//
-// }
-// finally {
-// diProgress_.dispose();
-// }
-//
-// impl.get2dFrame().getVisuPanel().setViewMode(PivVisuPanel.MODE_ORIGINAL_VIEW);
-//// impl.message(PivResource.getS("{0} images ont \xE9t\xE9 reconditionn\xE9es avec succ\xE8s",impl.getCurrentProject().getSrcImageFiles().length));
-// }
-// };
-//
-// PivProgressionPanel pnProgress_=new PivProgressionPanel(r);
-// diProgress_ = pnProgress_.createDialog(impl.getParentComponent());
-// diProgress_.setOption(CtuluDialog.ZERO_OPTION);
-// diProgress_.setDefaultCloseOperation(CtuluDialog.DO_NOTHING_ON_CLOSE);
-// diProgress_.setTitle(r.getName());
-//
-// r.start();
-// diProgress_.afficheDialogModal();
- }
-
- /**
- * @return true Si toutes les donn\xE9es sont pr\xE9sentes pour un lancement.
- */
- public boolean isValide() {
- return true;
- }
-
- @Override
- public String getEnableCondition() {
- return PivResource.getS("Les images transform\xE9es doivent exister");
- }
-}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|