r516 - in trunk: tutti-service/src/main/java/fr/ifremer/tutti/service tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util
Author: tchemit Date: 2013-03-02 17:30:00 +0100 (Sat, 02 Mar 2013) New Revision: 516 Url: http://forge.codelutin.com/projects/tutti/repository/revisions/516 Log: fixes #1872: [IMP/EXP] - Import Allegro (ne pas ajouter les fichiers de configuration de tutti) fixes #2071: [IMP/EXP] Demander une confirmation avant d'?\195?\169craser un fichier fixes #2072: [IMP/EXP] Ajouter de mani?\195?\168re automatique l'extension au fichier lors des exports Modified: trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/PersistenceService.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/ExportDbAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ExportAllCaracteristicAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ExportProtocolCaracteristicAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ExportProtocolSpeciesAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporaryGearExampleAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporaryPersonExampleAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporarySpeciesExampleAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporaryVesselExampleAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporaryGearAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporaryPersonAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporarySpeciesAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporaryVesselAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/TuttiUIUtil.java trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties Modified: trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/PersistenceService.java =================================================================== --- trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/PersistenceService.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/PersistenceService.java 2013-03-02 16:30:00 UTC (rev 516) @@ -94,8 +94,10 @@ driver.clearAllCaches(); } - DateFormat exportDateFormat = new SimpleDateFormat("yyyy-MM-dd"); + public static final DateFormat EXPORT_DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd"); + public static final String EXPORT_DIRECTORY_FORMAT = "tutti-%s-%s"; + /** * Export db as an zip archive (including the attachments). * @@ -116,11 +118,14 @@ TuttiServiceConfig config = context.getConfig(); - File structureDirectory = new File( - config.newTempFile("exportdb"), - "tutti-" + config.getVersion() + - exportDateFormat.format(context.currentDate())); + String directoryName = String.format( + EXPORT_DIRECTORY_FORMAT, + config.getVersion(), + EXPORT_DATE_FORMAT.format(context.currentDate())); + File structureDirectory = new File(config.newTempFile("exportdb"), + directoryName); + TuttiIOUtil.forceMkdir(structureDirectory, "Could not create directory"); @@ -137,14 +142,6 @@ new File(structureDirectory, "meas_files"), "Could not copy db attachment directory"); - TuttiIOUtil.copyFile(pConfig.getDbConfigurationPath(), - structureDirectory, - "Could not copy db configuration file"); - - TuttiIOUtil.copyFile(pConfig.getDbEnumerationPath(), - structureDirectory, - "Could not copy db enumeration file"); - //create zip TuttiIOUtil.zip(structureDirectory, file, "Could not create archive at " + file); Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/ExportDbAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/ExportDbAction.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/ExportDbAction.java 2013-03-02 16:30:00 UTC (rev 516) @@ -72,19 +72,27 @@ null, "^.*\\.zip", _("tutti.file.zip") ); - doAction = file != null; - } + if (file == null) { - if (doAction) { - file = TuttiIOUtil.addExtensionIfMissing(file, ".zip"); + // user cancel + doAction = false; + } else { + + // add extension if missing + file = TuttiIOUtil.addExtensionIfMissing(file, ".zip"); + + + // ask user to confirm overwrite. + doAction = TuttiUIUtil.askOverwriteFile(getUI(), file); + } } return doAction; } @Override protected void releaseAction() { + file = null; super.releaseAction(); - file = null; } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationAction.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationAction.java 2013-03-02 16:30:00 UTC (rev 516) @@ -288,16 +288,10 @@ message = _("tutti.dialog.askCancelEditBeforeLeaving.cancelEditFishingOperation"); } - int answer = getHandler().askCancelEditBeforeLeaving(message); + // ok will revert any modification by + // editing new fishing operation (if user says yes) + canContinue = handler.askCancelEditBeforeLeaving(message); - switch (answer) { - case JOptionPane.YES_OPTION: - - // ok will revert any modification by - // editing new fishing operation - canContinue = true; - break; - } } } } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java 2013-03-02 16:30:00 UTC (rev 516) @@ -409,20 +409,13 @@ // model is not valid, ask user to continue or not - int answer = askCancelEditBeforeLeaving( + result = askCancelEditBeforeLeaving( _("tutti.dialog.askCancelEditBeforeLeaving.cancelEditFishingOperation")); - switch (answer) { - case JOptionPane.YES_OPTION: - // ok will revert any modification - ActionEvent event = new ActionEvent(this, newIndex, null); - doAction(ui.getCancelButton(), event); - result = true; - break; - default: - - // other case, use cancel action - result = false; + if (result) { + // ok will revert any modification + ActionEvent event = new ActionEvent(this, newIndex, null); + doAction(ui.getCancelButton(), event); } } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java 2013-03-02 16:30:00 UTC (rev 516) @@ -196,20 +196,14 @@ } else { // model is not valid, ask user to loose modification or cancel - int answer = askCancelEditBeforeLeaving( + result = askCancelEditBeforeLeaving( _("tutti.dialog.askCancelEditBeforeLeaving.cancelEditCatchBatch")); - switch (answer) { - case JOptionPane.YES_OPTION: - // ok will revert any modification - ActionEvent event = new ActionEvent(this, newIndex, null); - doAction(ui.getCancelButton(), event); - result = true; - break; - default: + if (result) { - // other case, use cancel action - result = false; + // ok will revert any modification + ActionEvent event = new ActionEvent(this, newIndex, null); + doAction(ui.getCancelButton(), event); } } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ExportAllCaracteristicAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ExportAllCaracteristicAction.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ExportAllCaracteristicAction.java 2013-03-02 16:30:00 UTC (rev 516) @@ -74,9 +74,13 @@ null, "^.*\\.csv", _("tutti.file.csv") ); - doAction = file != null; + if (file == null) { - if (doAction) { + // user cancel + doAction = false; + } else { + + // add extension if missing file = TuttiIOUtil.addExtensionIfMissing(file, ".csv"); } } @@ -85,8 +89,8 @@ @Override protected void releaseAction() { + file = null; super.releaseAction(); - file = null; } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ExportProtocolCaracteristicAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ExportProtocolCaracteristicAction.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ExportProtocolCaracteristicAction.java 2013-03-02 16:30:00 UTC (rev 516) @@ -75,8 +75,13 @@ null, "^.*\\.csv", _("tutti.file.csv") ); - doAction = file != null; - if (doAction) { + if (file == null) { + + // user cancel + doAction = false; + } else { + + // add extension if missing file = TuttiIOUtil.addExtensionIfMissing(file, ".csv"); } } @@ -85,8 +90,8 @@ @Override protected void releaseAction() { + file = null; super.releaseAction(); - file = null; } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ExportProtocolSpeciesAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ExportProtocolSpeciesAction.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ExportProtocolSpeciesAction.java 2013-03-02 16:30:00 UTC (rev 516) @@ -77,8 +77,13 @@ null, "^.*\\.csv", _("tutti.file.csv") ); - doAction = file != null; - if (doAction) { + if (file == null) { + + // user cancel + doAction = false; + } else { + + // add extension if missing file = TuttiIOUtil.addExtensionIfMissing(file, ".csv"); } } @@ -87,8 +92,8 @@ @Override protected void releaseAction() { + file = null; super.releaseAction(); - file = null; } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporaryGearExampleAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporaryGearExampleAction.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporaryGearExampleAction.java 2013-03-02 16:30:00 UTC (rev 516) @@ -25,6 +25,7 @@ */ import com.ezware.oxbow.swingbits.util.Preconditions; +import fr.ifremer.tutti.service.TuttiIOUtil; import fr.ifremer.tutti.service.referential.TuttiReferentialImportExportService; import fr.ifremer.tutti.ui.swing.TuttiUIContext; import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; @@ -74,15 +75,23 @@ null, "^.*\\.csv", _("tutti.file.csv") ); - doAction = file != null; + if (file == null) { + + // user cancel + doAction = false; + } else { + + // add extension if missing + file = TuttiIOUtil.addExtensionIfMissing(file, ".csv"); + } } return doAction; } @Override protected void releaseAction() { + file = null; super.releaseAction(); - file = null; } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporaryPersonExampleAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporaryPersonExampleAction.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporaryPersonExampleAction.java 2013-03-02 16:30:00 UTC (rev 516) @@ -25,6 +25,7 @@ */ import com.ezware.oxbow.swingbits.util.Preconditions; +import fr.ifremer.tutti.service.TuttiIOUtil; import fr.ifremer.tutti.service.referential.TuttiReferentialImportExportService; import fr.ifremer.tutti.ui.swing.TuttiUIContext; import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; @@ -75,15 +76,23 @@ null, "^.*\\.csv", _("tutti.file.csv") ); - doAction = file != null; + if (file == null) { + + // user cancel + doAction = false; + } else { + + // add extension if missing + file = TuttiIOUtil.addExtensionIfMissing(file, ".csv"); + } } return doAction; } @Override protected void releaseAction() { + file = null; super.releaseAction(); - file = null; } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporarySpeciesExampleAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporarySpeciesExampleAction.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporarySpeciesExampleAction.java 2013-03-02 16:30:00 UTC (rev 516) @@ -25,6 +25,7 @@ */ import com.ezware.oxbow.swingbits.util.Preconditions; +import fr.ifremer.tutti.service.TuttiIOUtil; import fr.ifremer.tutti.service.referential.TuttiReferentialImportExportService; import fr.ifremer.tutti.ui.swing.TuttiUIContext; import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; @@ -74,15 +75,23 @@ null, "^.*\\.csv", _("tutti.file.csv") ); - doAction = file != null; + if (file == null) { + + // user cancel + doAction = false; + } else { + + // add extension if missing + file = TuttiIOUtil.addExtensionIfMissing(file, ".csv"); + } } return doAction; } @Override protected void releaseAction() { + file = null; super.releaseAction(); - file = null; } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporaryVesselExampleAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporaryVesselExampleAction.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporaryVesselExampleAction.java 2013-03-02 16:30:00 UTC (rev 516) @@ -25,6 +25,7 @@ */ import com.ezware.oxbow.swingbits.util.Preconditions; +import fr.ifremer.tutti.service.TuttiIOUtil; import fr.ifremer.tutti.service.referential.TuttiReferentialImportExportService; import fr.ifremer.tutti.ui.swing.TuttiUIContext; import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; @@ -74,7 +75,15 @@ null, "^.*\\.csv", _("tutti.file.csv") ); - doAction = file != null; + if (file == null) { + + // user cancel + doAction = false; + } else { + + // add extension if missing + file = TuttiIOUtil.addExtensionIfMissing(file, ".csv"); + } } return doAction; } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporaryGearAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporaryGearAction.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporaryGearAction.java 2013-03-02 16:30:00 UTC (rev 516) @@ -81,8 +81,8 @@ @Override protected void releaseAction() { + file = null; super.releaseAction(); - file = null; } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporaryPersonAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporaryPersonAction.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporaryPersonAction.java 2013-03-02 16:30:00 UTC (rev 516) @@ -81,8 +81,8 @@ @Override protected void releaseAction() { + file = null; super.releaseAction(); - file = null; } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporarySpeciesAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporarySpeciesAction.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporarySpeciesAction.java 2013-03-02 16:30:00 UTC (rev 516) @@ -80,8 +80,8 @@ @Override protected void releaseAction() { + file = null; super.releaseAction(); - file = null; } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporaryVesselAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporaryVesselAction.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporaryVesselAction.java 2013-03-02 16:30:00 UTC (rev 516) @@ -80,8 +80,8 @@ @Override protected void releaseAction() { + file = null; super.releaseAction(); - file = null; } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java 2013-03-02 16:30:00 UTC (rev 516) @@ -29,13 +29,13 @@ import com.google.common.collect.Sets; import fr.ifremer.tutti.persistence.entities.IdAware; import fr.ifremer.tutti.service.DecoratorService; -import fr.ifremer.tutti.ui.swing.content.AbstractMainUITuttiAction; -import fr.ifremer.tutti.ui.swing.content.MainUI; -import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import fr.ifremer.tutti.ui.swing.TuttiDataContext; import fr.ifremer.tutti.ui.swing.TuttiScreen; import fr.ifremer.tutti.ui.swing.TuttiUIContext; import fr.ifremer.tutti.ui.swing.config.TuttiApplicationConfig; +import fr.ifremer.tutti.ui.swing.content.AbstractMainUITuttiAction; +import fr.ifremer.tutti.ui.swing.content.MainUI; +import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import fr.ifremer.tutti.ui.swing.util.action.AbstractTuttiAction; import fr.ifremer.tutti.ui.swing.util.action.TuttiUIAction; import fr.ifremer.tutti.ui.swing.util.editor.SimpleTimeEditor; @@ -277,21 +277,20 @@ } public int askSaveBeforeLeaving(String message) { - int i = JOptionPane.showConfirmDialog( + int result = JOptionPane.showConfirmDialog( getContext().getMainUI(), message, _("tutti.dialog.askSaveBeforeLeaving.title"), JOptionPane.YES_NO_CANCEL_OPTION); - return i; + return result; } - public int askCancelEditBeforeLeaving(String message) { - int i = JOptionPane.showConfirmDialog( + public boolean askCancelEditBeforeLeaving(String message) { + boolean result = TuttiUIUtil.askQuestion( getContext().getMainUI(), message, - _("tutti.dialog.askCancelEditBeforeLeaving.title"), - JOptionPane.YES_NO_OPTION); - return i; + _("tutti.dialog.askCancelEditBeforeLeaving.title")); + return result; } //------------------------------------------------------------------------// //-- Internal methods --// Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/TuttiUIUtil.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/TuttiUIUtil.java 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/TuttiUIUtil.java 2013-03-02 16:30:00 UTC (rev 516) @@ -26,6 +26,7 @@ import com.google.common.base.Preconditions; import fr.ifremer.tutti.TuttiTechnicalException; +import fr.ifremer.tutti.ui.swing.content.MainUI; import jaxx.runtime.JAXXUtil; import org.apache.commons.beanutils.PropertyUtils; import org.apache.commons.lang3.time.DurationFormatUtils; @@ -151,11 +152,11 @@ ); } - public static boolean askQuestion(Component ui, String message) { + public static boolean askQuestion(Component ui, String title, String message) { int i = JOptionPane.showConfirmDialog( ui, message, - "Question?", + title, JOptionPane.YES_NO_OPTION); return i == JOptionPane.YES_OPTION; } @@ -237,4 +238,13 @@ } return textValue; } + + public static boolean askOverwriteFile(MainUI ui, File file) { + boolean result = + !file.exists() || + askQuestion(ui, + _("tutti.dialog.askOverwriteFile.title"), + _("tutti.dialog.askOverwriteFile.message", file)); + return result; + } } Modified: trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties =================================================================== --- trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties 2013-03-02 16:03:05 UTC (rev 515) +++ trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties 2013-03-02 16:30:00 UTC (rev 516) @@ -179,6 +179,8 @@ tutti.dialog.askCancelEditBeforeLeaving.cancelEditCatchBatch=La capture modifiée n'est pas valide. Voulez-vous annuler les modifications ? tutti.dialog.askCancelEditBeforeLeaving.cancelEditFishingOperation=Le trait modifié n'est pas valide. Voulez-vous annuler les modifications ? tutti.dialog.askCancelEditBeforeLeaving.title=Modifications non enregistrées mais invalides +tutti.dialog.askOverwriteFile.message=Le fichier %s existe déjà, confirmer pour l'écraser. +tutti.dialog.askOverwriteFile.title=Confirmer l'écrasement d'un fichier... tutti.dialog.askSaveBeforeLeaving.createFishingOperation=Le trait n'a pas été créé. Voulez-vous l'enregistrer ? tutti.dialog.askSaveBeforeLeaving.saveCatchBatch=La capture a été modifiée. Voulez-vous enregistrer les modifications ? tutti.dialog.askSaveBeforeLeaving.saveCruise=La campagne a été modifiée. Voulez-vous enregistrer les modifications ?
participants (1)
-
tchemit@users.forge.codelutin.com