r572 - in trunk/tutti-ui-swing/src/main: filtered-resources help java/fr/ifremer/tutti/ui/swing/content java/fr/ifremer/tutti/ui/swing/content/cruise java/fr/ifremer/tutti/ui/swing/content/db java/fr/ifremer/tutti/ui/swing/content/home java/fr/ifremer/tutti/ui/swing/content/operation java/fr/ifremer/tutti/ui/swing/content/operation/catches java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos java/fr/ifremer/tutti
Author: tchemit Date: 2013-03-11 11:01:36 +0100 (Mon, 11 Mar 2013) New Revision: 572 Url: http://forge.codelutin.com/projects/tutti/repository/revisions/572 Log: refs #2075: [TECH] Action longue (probl?\195?\168me de cin?\195?\169matique) refs #1715: [AIDE] - Aide modifiable sans recompilation refs #1843: [AIDE] - Aide par champ (A pr?\195?\169ciser m?\195?\170me si je comprends quoi faire...) Added: trunk/tutti-ui-swing/src/main/help/createSpeciesBatch.html trunk/tutti-ui-swing/src/main/help/dbManager.html trunk/tutti-ui-swing/src/main/help/editAccidentalBatch.html trunk/tutti-ui-swing/src/main/help/editBenthosBatch.html trunk/tutti-ui-swing/src/main/help/editMacroWasteBatch.html trunk/tutti-ui-swing/src/main/help/editPlanktonBatch.html trunk/tutti-ui-swing/src/main/help/editSpeciesFrequencies.html trunk/tutti-ui-swing/src/main/help/manageTemporaryReferential.html trunk/tutti-ui-swing/src/main/help/selectCruise.html trunk/tutti-ui-swing/src/main/help/splitSpeciesBatch.html trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/action/TuttiActionSwingWorker.java Modified: trunk/tutti-ui-swing/src/main/filtered-resources/tutti-help-fr.properties trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/AbstractChangeScreenAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/AbstractMainUITuttiAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/CloseApplicationAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/EditSelectedCruiseAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/EditSelectedCruiseCatchesAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/EditSelectedProgramAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/EditSelectedProtocolAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/ImportTemporaryReferentialAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/ManageDbAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/SelectCruiseAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/UpdateApplicationAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/UpdateReferentialAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/ValidateSelectedCruiseCatchesAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/CancelEditCruiseAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/SaveCruiseAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/CloseDbAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUI.jaxx 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/InstallDbAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/OpenDbAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/CloneProtocolAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/DeleteProtocolAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/EditCatchesAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/EditCruiseAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/EditProgramAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/EditProtocolAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/ExportProtocolAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/ImportProtocolAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/NewCruiseAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/NewProgramAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/NewProtocolAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/ValidateCatchesAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/CancelEditFishingOperationAction.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/EditFishingOperationUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUI.jaxx 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/FishingOperationsUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/ImportCasinoAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/NewFishingOperationAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/SaveFishingOperationAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/CancelEditCatchBatchAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/ComputeWeightsAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUI.css 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/ImportPupitriAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/SaveCatchBatchAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchTableModel.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/macrowaste/MacroWasteBatchUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/macrowaste/MacroWasteBatchUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/macrowaste/MacroWasteBatchUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/plankton/PlanktonBatchUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/plankton/PlanktonBatchUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/plankton/PlanktonBatchUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/CreateMelagAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/RemoveSpeciesBatchAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/RemoveSpeciesSubBatchAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/RenameSpeciesBatchAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SampleCategoryComponent.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SelectSpeciesUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SelectSpeciesUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/AddSpeciesAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/CreateSpeciesBatchUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/CreateSpeciesBatchUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/CreateSpeciesBatchUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/AbstractCaracteristicTabUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/CancelEditProgramAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/SaveProgramAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/AddSpeciesProtocolAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/CancelEditProtocolAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.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/protocol/ImportProtocolCaracteristicAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ImportProtocolSpeciesAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/RemoveSpeciesProtocolAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/SaveProtocolAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/SelectOtherSpeciesAction.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/content/referential/ManageTemporaryReferentialUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUIHandler.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/ActionListCellRenderer.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/action/AbstractTuttiAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/action/TuttiUIAction.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/editor/CaracteristicValueEditor.java trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties Modified: trunk/tutti-ui-swing/src/main/filtered-resources/tutti-help-fr.properties =================================================================== --- trunk/tutti-ui-swing/src/main/filtered-resources/tutti-help-fr.properties 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/filtered-resources/tutti-help-fr.properties 2013-03-11 10:01:36 UTC (rev 572) @@ -1,5 +1,58 @@ +### +# #%L +# Tutti :: UI +# $Id$ +# $HeadURL$ +# %% +# Copyright (C) 2012 - 2013 Ifremer +# %% +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public +# License along with this program. If not, see +# <http://www.gnu.org/licenses/gpl-3.0.html>. +# #L% +### #Generated by org.nuiton.jaxx.plugin.GenerateHelpIdsMojo -#Sat Mar 09 13:54:32 CET 2013 +#Mon Mar 11 07:08:49 CET 2013 +tuttihelp.createSpeciesBatch.action.addSpecies.help=createSpeciesBatch.html\#actions +tuttihelp.createSpeciesBatch.field.batchWeightField.help=createSpeciesBatch.html\#fields +tuttihelp.createSpeciesBatch.field.sortedUnsortedCategoryComboBox.help=createSpeciesBatch.html\#fields +tuttihelp.createSpeciesBatch.field.speciesComboBox.help=createSpeciesBatch.html\#fields +tuttihelp.createSpeciesBatch.help=createSpeciesBatch.html +tuttihelp.dbManager.action.closeDb.help=dbManager.html\#actions +tuttihelp.dbManager.action.exportDb.help=dbManager.html\#actions +tuttihelp.dbManager.action.installDb.help=dbManager.html\#actions +tuttihelp.dbManager.action.openDb.help=dbManager.html\#actions +tuttihelp.dbManager.action.upgradeDb.help=dbManager.html\#actions +tuttihelp.dbManager.help=dbManager.html +tuttihelp.editAccidentalBatch.help=editAccidentalBatch.html +tuttihelp.editBenthosBatch.help=editBenthosBatch.html +tuttihelp.editCatchBatch.action.cancelEditCatchBatch.help=editCatchBatch.html\#actions +tuttihelp.editCatchBatch.action.computeWeights.help=editCatchBatch.html\#actions +tuttihelp.editCatchBatch.action.importPupitri.help=editCatchBatch.html\#actions +tuttihelp.editCatchBatch.action.saveCatchBatch.help=editCatchBatch.html\#actions +tuttihelp.editCatchBatch.field.benthosTotalSampleSortedWeight.help= +tuttihelp.editCatchBatch.field.benthosTotalSortedWeight.help= +tuttihelp.editCatchBatch.field.benthosTotalUnsortedWeight.help= +tuttihelp.editCatchBatch.field.benthosTotalWeight.help= +tuttihelp.editCatchBatch.field.catchTotalRejectedWeight.help= +tuttihelp.editCatchBatch.field.catchTotalSortedWeight.help= +tuttihelp.editCatchBatch.field.catchTotalUnsortedWeight.help= +tuttihelp.editCatchBatch.field.catchTotalWeight.help= +tuttihelp.editCatchBatch.field.macroWasteTotalWeight.help= +tuttihelp.editCatchBatch.field.speciesTotalSampleSortedWeight.help= +tuttihelp.editCatchBatch.field.speciesTotalSortedWeight.help= +tuttihelp.editCatchBatch.field.speciesTotalUnsortedWeight.help= +tuttihelp.editCatchBatch.field.speciesTotalWeight.help= tuttihelp.editCatchBatch.help=editCatchBatch.html tuttihelp.editCruise.action.cancel.help=editCruise.html\#actions tuttihelp.editCruise.action.generateName.help=editCruise.html\#actions @@ -20,9 +73,9 @@ tuttihelp.editCruise.list.headOfSortRoom.help=editCruise.html\#fields tuttihelp.editCruise.list.vessel.help=editCruise.html\#fields tuttihelp.editFishingOperation.action.attachments.help=editFishingOperation.html\#actions -tuttihelp.editFishingOperation.action.cancel.help=editFishingOperation.html\#actions +tuttihelp.editFishingOperation.action.cancelEditFishingOperation.help=editFishingOperation.html\#actions tuttihelp.editFishingOperation.action.importCasino.help=editFishingOperation.html\#actions -tuttihelp.editFishingOperation.action.save.help=editFishingOperation.html\#actions +tuttihelp.editFishingOperation.action.saveEditFishingOperation.help=editFishingOperation.html\#actions tuttihelp.editFishingOperation.field.comment.help=editFishingOperation.html\#fields tuttihelp.editFishingOperation.field.duration.help=editFishingOperation.html\#fields tuttihelp.editFishingOperation.field.fishingOperationNumber.help=editFishingOperation.html\#fields @@ -48,21 +101,22 @@ tuttihelp.editFishingOperation.gearShootingStartLongitude.help=editFishingOperation.html\#fields tuttihelp.editFishingOperation.help=editFishingOperation.html tuttihelp.editFishingOperation.list.recorderPerson.help=editFishingOperation.html\#fields -tuttihelp.editProgram.action.cancel.help=editProgram.html\#actions -tuttihelp.editProgram.action.save.help=editProgram.html\#actions +tuttihelp.editMacroWasteBatch.help=editMacroWasteBatch.html +tuttihelp.editPlanktonBatch.help=editPlanktonBatch.html +tuttihelp.editProgram.action.cancelProgram.help=editProgram.html\#actions +tuttihelp.editProgram.action.saveProgram.help=editProgram.html\#actions tuttihelp.editProgram.field.comment.help=editProgram.html\#fields tuttihelp.editProgram.field.name.help=editProgram.html\#fields tuttihelp.editProgram.field.zone.help=editProgram.html\#fields tuttihelp.editProgram.help=editProgram.html tuttihelp.editProtocol.action.addSpeciesProtocol.help=editProtocol.html\#actions -tuttihelp.editProtocol.action.cancel.help=editProtocol.html\#actions -tuttihelp.editProtocol.action.exportAllCaracteristic.help=editProtocol.html\#actions -tuttihelp.editProtocol.action.exportCaracteristic.help=editProtocol.html\#actions -tuttihelp.editProtocol.action.exportSpecies.help=editProtocol.html\#actions -tuttihelp.editProtocol.action.importCaracteristic.help=editProtocol.html\#actions -tuttihelp.editProtocol.action.importSpecies.help=editProtocol.html\#actions -tuttihelp.editProtocol.action.removeSpeciesProtocol.help=editProtocol.html\#actions -tuttihelp.editProtocol.action.save.help=editProtocol.html\#actions +tuttihelp.editProtocol.action.cancelEditProtocol.help=editProtocol.html\#actions +tuttihelp.editProtocol.action.exportProtocolAllCaracteristic.help=editProtocol.html\#actions +tuttihelp.editProtocol.action.exportProtocolCaracteristic.tip=editProtocol.html\#actions +tuttihelp.editProtocol.action.exportProtocolSpecies.help=editProtocol.html\#actions +tuttihelp.editProtocol.action.importProtocolCaracteristic.help=editProtocol.html\#actions +tuttihelp.editProtocol.action.importProtocolSpecies.help=editProtocol.html\#actions +tuttihelp.editProtocol.action.saveProtocol.help=editProtocol.html\#actions tuttihelp.editProtocol.action.selectOtherSpecies.help=editProtocol.html\#actions tuttihelp.editProtocol.field.comment.help=editProtocol.html\#fields tuttihelp.editProtocol.field.name.help=editProtocol.html\#fields @@ -73,7 +127,23 @@ tuttihelp.editProtocol.list.vesselUseFeature.help=editProtocol.html\#fields tuttihelp.editProtocol.pane.caracteristic.help=editProtocol.html\#fields tuttihelp.editProtocol.table.species.help=editProtocol.html\#fields +tuttihelp.editSpeciesBatch.action.createMelag.help=editSpeciesBatch.html\#actions +tuttihelp.editSpeciesBatch.action.createSpeciesBatch.help=editSpeciesBatch.html\#actions +tuttihelp.editSpeciesBatch.action.removeSpeciesBatch.help=editSpeciesBatch.html\#actions +tuttihelp.editSpeciesBatch.action.removeSpeciesSubBatch.help=editSpeciesBatch.html\#actions +tuttihelp.editSpeciesBatch.action.renameSpeciesBatch.help=editSpeciesBatch.html\#actions +tuttihelp.editSpeciesBatch.action.splitSpeciesBatch.help=editSpeciesBatch.html\#actions +tuttihelp.editSpeciesBatch.field.speciesTotalInertWeight.help=editSpeciesBatch.html\#fields +tuttihelp.editSpeciesBatch.field.speciesTotalLivingNotItemizedWeight.help=editSpeciesBatch.html\#fields +tuttihelp.editSpeciesBatch.field.speciesTotalSampleSortedWeight.help=editSpeciesBatch.html\#fields +tuttihelp.editSpeciesBatch.field.speciesTotalSortedWeight.help=editSpeciesBatch.html\#fields +tuttihelp.editSpeciesBatch.field.speciesTotalUnsortedWeight.help=editSpeciesBatch.html\#fields +tuttihelp.editSpeciesBatch.field.speciesTotalWeight.help=editSpeciesBatch.html\#fields +tuttihelp.editSpeciesBatch.filterSpeciesBatch.help=editSpeciesBatch.html tuttihelp.editSpeciesBatch.help=editSpeciesBatch.html +tuttihelp.editSpeciesFrequencies.help=editSpeciesFrequencies.html +tuttihelp.fishingOperations.action.newFishingOperation.help=fishingOperations.html\#actions +tuttihelp.fishingOperations.field.fishingOperation.help=fishingOperations.html\#fields tuttihelp.fishingOperations.help=fishingOperations.html tuttihelp.main.help=main.html tuttihelp.main.menu.action.about.help=main.html\#menu_ @@ -90,3 +160,35 @@ tuttihelp.main.menu.action.site.help=main.html\#menu_ tuttihelp.main.menu.action.updateApplication.help=main.html\#menu_ tuttihelp.main.menu.action.validateCatches.help=main.html\#menu_ +tuttihelp.manageTemporaryReferential.action.exportTemporaryGearExample.help=manageTemporaryReferential.html\#actions +tuttihelp.manageTemporaryReferential.action.exportTemporaryPersonExample.help=manageTemporaryReferential.html\#actions +tuttihelp.manageTemporaryReferential.action.exportTemporarySpeciesExample.help=manageTemporaryReferential.html\#actions +tuttihelp.manageTemporaryReferential.action.exportTemporaryVesselExample.help=manageTemporaryReferential.html\#actions +tuttihelp.manageTemporaryReferential.action.importTemporaryGear.help=manageTemporaryReferential.html\#actions +tuttihelp.manageTemporaryReferential.action.importTemporaryPerson.help=manageTemporaryReferential.html\#actions +tuttihelp.manageTemporaryReferential.action.importTemporarySpecies.help=manageTemporaryReferential.html\#actions +tuttihelp.manageTemporaryReferential.action.importTemporaryVessel.help=manageTemporaryReferential.html\#actions +tuttihelp.manageTemporaryReferential.help=manageTemporaryReferential.html +tuttihelp.selectCruise.action.cloneProtocol.help=selectCruise.html\#actions +tuttihelp.selectCruise.action.deleteProtocol.help=selectCruise.html\#actions +tuttihelp.selectCruise.action.editCatches.help=selectCruise.html\#actions +tuttihelp.selectCruise.action.editCruise.help=selectCruise.html\#actions +tuttihelp.selectCruise.action.editProgram.help=selectCruise.html\#actions +tuttihelp.selectCruise.action.editProtocol.help=selectCruise.html\#actions +tuttihelp.selectCruise.action.exportProtocol.help=selectCruise.html\#actions +tuttihelp.selectCruise.action.importProtocol.help=selectCruise.html\#actions +tuttihelp.selectCruise.action.newCruise.help=selectCruise.html\#actions +tuttihelp.selectCruise.action.newProgram.help=selectCruise.html\#actions +tuttihelp.selectCruise.action.newProtocol.help=selectCruise.html\#actions +tuttihelp.selectCruise.action.validateCatches.help=selectCruise.html\#actions +tuttihelp.selectCruise.field.cruise.help=selectCruise.html\#fields +tuttihelp.selectCruise.field.program.help=selectCruise.html\#fields +tuttihelp.selectCruise.field.protocol.help=selectCruise.html\#fields +tuttihelp.selectCruise.help=selectCruise.html +tuttihelp.splitSpeciesBatch.action.cancel.help=splitSpeciesBatch.html\#actions +tuttihelp.splitSpeciesBatch.action.save.help=splitSpeciesBatch.html\#actions +tuttihelp.splitSpeciesBatch.field.batchWeightField.help=splitSpeciesBatch.html\#fields +tuttihelp.splitSpeciesBatch.field.categoryField.help=splitSpeciesBatch.html\#fields +tuttihelp.splitSpeciesBatch.field.sampleWeightField.help=splitSpeciesBatch.html\#fields +tuttihelp.splitSpeciesBatch.field.speciesField.help=splitSpeciesBatch.html\#fields +tuttihelp.splitSpeciesBatch.help=splitSpeciesBatch.html Added: trunk/tutti-ui-swing/src/main/help/createSpeciesBatch.html =================================================================== --- trunk/tutti-ui-swing/src/main/help/createSpeciesBatch.html (rev 0) +++ trunk/tutti-ui-swing/src/main/help/createSpeciesBatch.html 2013-03-11 10:01:36 UTC (rev 572) @@ -0,0 +1,53 @@ +<!-- + #%L + Tutti :: UI + $Id$ + $HeadURL$ + %% + Copyright (C) 2012 - 2013 Ifremer + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public + License along with this program. If not, see + <http://www.gnu.org/licenses/gpl-3.0.html>. + #L% + --> +<!DOCTYPE html> +<html lang="fr"> + +<head> + <meta charset="utf-8"/> + <title>Tutti - Créer un lot de poissons</title> +</head> +<body> + +<h1>Créer un lot de poissons</h1> + +<p>Sur cette écran on peut créer un lot de poissons...</p> + +<strong>Documentation à rédiger</strong> + +<h2>Champs</h2> +<ul> + <li>Nom</li> + <li>Commentaire</li> +</ul> + +<h2>Actions</h2> +Actions possibles : + +<ul> + <li>Annuler</li> + <li>Enregister</li> +</ul> +</body> +</html> \ No newline at end of file Property changes on: trunk/tutti-ui-swing/src/main/help/createSpeciesBatch.html ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision HeadURL Added: svn:eol-style + native Added: trunk/tutti-ui-swing/src/main/help/dbManager.html =================================================================== --- trunk/tutti-ui-swing/src/main/help/dbManager.html (rev 0) +++ trunk/tutti-ui-swing/src/main/help/dbManager.html 2013-03-11 10:01:36 UTC (rev 572) @@ -0,0 +1,53 @@ +<!-- + #%L + Tutti :: UI + $Id$ + $HeadURL$ + %% + Copyright (C) 2012 - 2013 Ifremer + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public + License along with this program. If not, see + <http://www.gnu.org/licenses/gpl-3.0.html>. + #L% + --> +<!DOCTYPE html> +<html lang="fr"> + +<head> + <meta charset="utf-8"/> + <title>Tutti - Gérer la base de données</title> +</head> +<body> + +<h1>Gérer la base de données</h1> + +<p>Sur cette écran on peut gérer la base de données...</p> + +<strong>Documentation à rédiger</strong> + +<h2>Champs</h2> +<ul> + <li>Nom</li> + <li>Commentaire</li> +</ul> + +<h2>Actions</h2> +Actions possibles : + +<ul> + <li>Annuler</li> + <li>Enregister</li> +</ul> +</body> +</html> \ No newline at end of file Property changes on: trunk/tutti-ui-swing/src/main/help/dbManager.html ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision HeadURL Added: svn:eol-style + native Added: trunk/tutti-ui-swing/src/main/help/editAccidentalBatch.html =================================================================== --- trunk/tutti-ui-swing/src/main/help/editAccidentalBatch.html (rev 0) +++ trunk/tutti-ui-swing/src/main/help/editAccidentalBatch.html 2013-03-11 10:01:36 UTC (rev 572) @@ -0,0 +1,53 @@ +<!-- + #%L + Tutti :: UI + $Id$ + $HeadURL$ + %% + Copyright (C) 2012 - 2013 Ifremer + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public + License along with this program. If not, see + <http://www.gnu.org/licenses/gpl-3.0.html>. + #L% + --> +<!DOCTYPE html> +<html lang="fr"> + +<head> + <meta charset="utf-8"/> + <title>Tutti - Éditer une capture accidentelle</title> +</head> +<body> + +<h1>Éditer une capture accidentelle</h1> + +<p>Sur cette écran on peut éditer une capture accidentelle...</p> + +<strong>Documentation à rédiger</strong> + +<h2>Champs</h2> +<ul> + <li>Nom</li> + <li>Commentaire</li> +</ul> + +<h2>Actions</h2> +Actions possibles : + +<ul> + <li>Annuler</li> + <li>Enregister</li> +</ul> +</body> +</html> \ No newline at end of file Property changes on: trunk/tutti-ui-swing/src/main/help/editAccidentalBatch.html ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision HeadURL Added: svn:eol-style + native Added: trunk/tutti-ui-swing/src/main/help/editBenthosBatch.html =================================================================== --- trunk/tutti-ui-swing/src/main/help/editBenthosBatch.html (rev 0) +++ trunk/tutti-ui-swing/src/main/help/editBenthosBatch.html 2013-03-11 10:01:36 UTC (rev 572) @@ -0,0 +1,53 @@ +<!-- + #%L + Tutti :: UI + $Id$ + $HeadURL$ + %% + Copyright (C) 2012 - 2013 Ifremer + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public + License along with this program. If not, see + <http://www.gnu.org/licenses/gpl-3.0.html>. + #L% + --> +<!DOCTYPE html> +<html lang="fr"> + +<head> + <meta charset="utf-8"/> + <title>Tutti - Éditer une capture de Benthos</title> +</head> +<body> + +<h1>Éditer une capture de Benthos</h1> + +<p>Sur cette écran on peut éditer une capture de Benthos...</p> + +<strong>Documentation à rédiger</strong> + +<h2>Champs</h2> +<ul> + <li>Nom</li> + <li>Commentaire</li> +</ul> + +<h2>Actions</h2> +Actions possibles : + +<ul> + <li>Annuler</li> + <li>Enregister</li> +</ul> +</body> +</html> \ No newline at end of file Property changes on: trunk/tutti-ui-swing/src/main/help/editBenthosBatch.html ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision HeadURL Added: svn:eol-style + native Added: trunk/tutti-ui-swing/src/main/help/editMacroWasteBatch.html =================================================================== --- trunk/tutti-ui-swing/src/main/help/editMacroWasteBatch.html (rev 0) +++ trunk/tutti-ui-swing/src/main/help/editMacroWasteBatch.html 2013-03-11 10:01:36 UTC (rev 572) @@ -0,0 +1,53 @@ +<!-- + #%L + Tutti :: UI + $Id$ + $HeadURL$ + %% + Copyright (C) 2012 - 2013 Ifremer + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public + License along with this program. If not, see + <http://www.gnu.org/licenses/gpl-3.0.html>. + #L% + --> +<!DOCTYPE html> +<html lang="fr"> + +<head> + <meta charset="utf-8"/> + <title>Tutti - Éditer une capture de macro-déchêts</title> +</head> +<body> + +<h1>Éditer une capture de macro-déchêts</h1> + +<p>Sur cette écran on peut éditer une capture de macro-déchêts...</p> + +<strong>Documentation à rédiger</strong> + +<h2>Champs</h2> +<ul> + <li>Nom</li> + <li>Commentaire</li> +</ul> + +<h2>Actions</h2> +Actions possibles : + +<ul> + <li>Annuler</li> + <li>Enregister</li> +</ul> +</body> +</html> \ No newline at end of file Property changes on: trunk/tutti-ui-swing/src/main/help/editMacroWasteBatch.html ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision HeadURL Added: svn:eol-style + native Added: trunk/tutti-ui-swing/src/main/help/editPlanktonBatch.html =================================================================== --- trunk/tutti-ui-swing/src/main/help/editPlanktonBatch.html (rev 0) +++ trunk/tutti-ui-swing/src/main/help/editPlanktonBatch.html 2013-03-11 10:01:36 UTC (rev 572) @@ -0,0 +1,53 @@ +<!-- + #%L + Tutti :: UI + $Id$ + $HeadURL$ + %% + Copyright (C) 2012 - 2013 Ifremer + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public + License along with this program. If not, see + <http://www.gnu.org/licenses/gpl-3.0.html>. + #L% + --> +<!DOCTYPE html> +<html lang="fr"> + +<head> + <meta charset="utf-8"/> + <title>Tutti - Éditer une capture de plancton</title> +</head> +<body> + +<h1>Éditer une capture de plancton</h1> + +<p>Sur cette écran on peut éditer une capture de plancton...</p> + +<strong>Documentation à rédiger</strong> + +<h2>Champs</h2> +<ul> + <li>Nom</li> + <li>Commentaire</li> +</ul> + +<h2>Actions</h2> +Actions possibles : + +<ul> + <li>Annuler</li> + <li>Enregister</li> +</ul> +</body> +</html> \ No newline at end of file Property changes on: trunk/tutti-ui-swing/src/main/help/editPlanktonBatch.html ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision HeadURL Added: svn:eol-style + native Added: trunk/tutti-ui-swing/src/main/help/editSpeciesFrequencies.html =================================================================== --- trunk/tutti-ui-swing/src/main/help/editSpeciesFrequencies.html (rev 0) +++ trunk/tutti-ui-swing/src/main/help/editSpeciesFrequencies.html 2013-03-11 10:01:36 UTC (rev 572) @@ -0,0 +1,53 @@ +<!-- + #%L + Tutti :: UI + $Id$ + $HeadURL$ + %% + Copyright (C) 2012 - 2013 Ifremer + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public + License along with this program. If not, see + <http://www.gnu.org/licenses/gpl-3.0.html>. + #L% + --> +<!DOCTYPE html> +<html lang="fr"> + +<head> + <meta charset="utf-8"/> + <title>Tutti - Éditer les mensurations d'un lot de poissons</title> +</head> +<body> + +<h1>Éditer les mensurations d'un lot de poissons</h1> + +<p>Sur cette écran on peut editer les mensurations d'un lot de poissons...</p> + +<strong>Documentation à rédiger</strong> + +<h2>Champs</h2> +<ul> + <li>Nom</li> + <li>Commentaire</li> +</ul> + +<h2>Actions</h2> +Actions possibles : + +<ul> + <li>Annuler</li> + <li>Enregister</li> +</ul> +</body> +</html> \ No newline at end of file Property changes on: trunk/tutti-ui-swing/src/main/help/editSpeciesFrequencies.html ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision HeadURL Added: svn:eol-style + native Added: trunk/tutti-ui-swing/src/main/help/manageTemporaryReferential.html =================================================================== --- trunk/tutti-ui-swing/src/main/help/manageTemporaryReferential.html (rev 0) +++ trunk/tutti-ui-swing/src/main/help/manageTemporaryReferential.html 2013-03-11 10:01:36 UTC (rev 572) @@ -0,0 +1,53 @@ +<!-- + #%L + Tutti :: UI + $Id$ + $HeadURL$ + %% + Copyright (C) 2012 - 2013 Ifremer + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public + License along with this program. If not, see + <http://www.gnu.org/licenses/gpl-3.0.html>. + #L% + --> +<!DOCTYPE html> +<html lang="fr"> + +<head> + <meta charset="utf-8"/> + <title>Tutti - Gérer les référentiels temporaires</title> +</head> +<body> + +<h1>Gérer les référentiels temporaires</h1> + +<p>Sur cette écran on peut gérer les référentiels temporaires...</p> + +<strong>Documentation à rédiger</strong> + +<h2>Champs</h2> +<ul> + <li>Nom</li> + <li>Commentaire</li> +</ul> + +<h2>Actions</h2> +Actions possibles : + +<ul> + <li>Annuler</li> + <li>Enregister</li> +</ul> +</body> +</html> \ No newline at end of file Property changes on: trunk/tutti-ui-swing/src/main/help/manageTemporaryReferential.html ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision HeadURL Added: svn:eol-style + native Added: trunk/tutti-ui-swing/src/main/help/selectCruise.html =================================================================== --- trunk/tutti-ui-swing/src/main/help/selectCruise.html (rev 0) +++ trunk/tutti-ui-swing/src/main/help/selectCruise.html 2013-03-11 10:01:36 UTC (rev 572) @@ -0,0 +1,53 @@ +<!-- + #%L + Tutti :: UI + $Id$ + $HeadURL$ + %% + Copyright (C) 2012 - 2013 Ifremer + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public + License along with this program. If not, see + <http://www.gnu.org/licenses/gpl-3.0.html>. + #L% + --> +<!DOCTYPE html> +<html lang="fr"> + +<head> + <meta charset="utf-8"/> + <title>Tutti - Choisir la campagne</title> +</head> +<body> + +<h1>Choisir la campagne</h1> + +<p>Sur cette écran on peut choisir la campagne à utiliser...</p> + +<strong>Documentation à rédiger</strong> + +<h2>Champs</h2> +<ul> + <li>Nom</li> + <li>Commentaire</li> +</ul> + +<h2>Actions</h2> +Actions possibles : + +<ul> + <li>Annuler</li> + <li>Enregister</li> +</ul> +</body> +</html> \ No newline at end of file Property changes on: trunk/tutti-ui-swing/src/main/help/selectCruise.html ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision HeadURL Added: svn:eol-style + native Added: trunk/tutti-ui-swing/src/main/help/splitSpeciesBatch.html =================================================================== --- trunk/tutti-ui-swing/src/main/help/splitSpeciesBatch.html (rev 0) +++ trunk/tutti-ui-swing/src/main/help/splitSpeciesBatch.html 2013-03-11 10:01:36 UTC (rev 572) @@ -0,0 +1,53 @@ +<!-- + #%L + Tutti :: UI + $Id$ + $HeadURL$ + %% + Copyright (C) 2012 - 2013 Ifremer + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public + License along with this program. If not, see + <http://www.gnu.org/licenses/gpl-3.0.html>. + #L% + --> +<!DOCTYPE html> +<html lang="fr"> + +<head> + <meta charset="utf-8"/> + <title>Tutti - Catégoriser une capture de poissons</title> +</head> +<body> + +<h1>Catégoriser une capture de poissons</h1> + +<p>Sur cette écran on peut catégoriser une capture de poissons...</p> + +<strong>Documentation à rédiger</strong> + +<h2>Champs</h2> +<ul> + <li>Nom</li> + <li>Commentaire</li> +</ul> + +<h2>Actions</h2> +Actions possibles : + +<ul> + <li>Annuler</li> + <li>Enregister</li> +</ul> +</body> +</html> \ No newline at end of file Property changes on: trunk/tutti-ui-swing/src/main/help/splitSpeciesBatch.html ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision HeadURL Added: svn:eol-style + native Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/AbstractChangeScreenAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/AbstractChangeScreenAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/AbstractChangeScreenAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -55,12 +55,9 @@ protected boolean skipCheckCurrentScreen; protected AbstractChangeScreenAction(MainUIHandler handler, - String icon, - String text, - String tip, boolean hideBody, TuttiScreen screen) { - super(handler, icon, text, tip, hideBody); + super(handler, hideBody); this.screen = screen; } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/AbstractMainUITuttiAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/AbstractMainUITuttiAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/AbstractMainUITuttiAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -34,10 +34,7 @@ public abstract class AbstractMainUITuttiAction extends AbstractTuttiAction<TuttiUIContext, MainUI, MainUIHandler> { protected AbstractMainUITuttiAction(MainUIHandler handler, - String icon, - String text, - String tip, boolean hideBody) { - super(handler, icon, text, tip, hideBody); + super(handler, hideBody); } } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/CloseApplicationAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/CloseApplicationAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/CloseApplicationAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -26,8 +26,6 @@ import fr.ifremer.tutti.ui.swing.RunTutti; -import static org.nuiton.i18n.I18n._; - /** * To close Tutti Application. * @@ -37,12 +35,7 @@ public class CloseApplicationAction extends AbstractChangeScreenAction { public CloseApplicationAction(MainUIHandler handler) { - super(handler, - "exit", - _("tutti.action.exit"), - _("tutti.action.exit.tip"), - false, - null); + super(handler, false, null); setSkipCheckCurrentScreen(true); } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/EditSelectedCruiseAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/EditSelectedCruiseAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/EditSelectedCruiseAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -29,8 +29,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import static org.nuiton.i18n.I18n._; - /** * Opens the cruise edition screen to edit the selected cruise. * @@ -44,12 +42,7 @@ LogFactory.getLog(EditSelectedCruiseAction.class); public EditSelectedCruiseAction(MainUIHandler handler) { - super(handler, - "cruise", - _("tutti.action.editSelectedCruise"), - _("tutti.action.editSelectedCruise.tip"), - true, - TuttiScreen.EDIT_CRUISE); + super(handler, true, TuttiScreen.EDIT_CRUISE); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/EditSelectedCruiseCatchesAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/EditSelectedCruiseCatchesAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/EditSelectedCruiseCatchesAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -30,8 +30,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import static org.nuiton.i18n.I18n._; - /** * Opens the catches edition screen to edit the selected catches. * @@ -45,13 +43,7 @@ LogFactory.getLog(EditSelectedCruiseCatchesAction.class); public EditSelectedCruiseCatchesAction(MainUIHandler handler) { - super(handler, - "edit", - _("tutti.action.editCatches"), - _("tutti.action.editCatches.tip"), - true, - TuttiScreen.EDIT_FISHING_OPERATION); -// setMnemonic('C'); + super(handler, true, TuttiScreen.EDIT_FISHING_OPERATION); } @Override @@ -61,7 +53,6 @@ log.info("Edit catches of cruise: " + getContext().getCruiseId()); } getContext().setValidationContext(TuttiUIContext.VALIDATION_CONTEXT_EDIT); -// getContext().setScreen(null); super.doAction(); } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/EditSelectedProgramAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/EditSelectedProgramAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/EditSelectedProgramAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -29,8 +29,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import static org.nuiton.i18n.I18n._; - /** * Opens the program edition screen to edit the selected program. * @@ -43,12 +41,7 @@ private static final Log log = LogFactory.getLog(EditSelectedProgramAction.class); public EditSelectedProgramAction(MainUIHandler handler) { - super(handler, - "program", - _("tutti.action.editSelectedProgram"), - _("tutti.action.editSelectedProgram.tip"), - true, - TuttiScreen.EDIT_PROGRAM); + super(handler, true, TuttiScreen.EDIT_PROGRAM); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/EditSelectedProtocolAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/EditSelectedProtocolAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/EditSelectedProtocolAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -29,8 +29,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import static org.nuiton.i18n.I18n._; - /** * Opens the protocol edition screen to edit the selected protocol. * @@ -43,13 +41,7 @@ private static final Log log = LogFactory.getLog(EditSelectedProtocolAction.class); public EditSelectedProtocolAction(MainUIHandler handler) { - super(handler, - "protocol", - _("tutti.action.editSelectedProtocol"), - _("tutti.action.editSelectedProtocol.tip"), - true, - TuttiScreen.EDIT_PROTOCOL); -// setMnemonic('P'); + super(handler, true, TuttiScreen.EDIT_PROTOCOL); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/ImportTemporaryReferentialAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/ImportTemporaryReferentialAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/ImportTemporaryReferentialAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -28,8 +28,6 @@ import javax.swing.SwingUtilities; -import static org.nuiton.i18n.I18n._; - /** * Open screen to import referential * @@ -39,12 +37,7 @@ public class ImportTemporaryReferentialAction extends AbstractChangeScreenAction { public ImportTemporaryReferentialAction(MainUIHandler handler) { - super(handler, - "temporary-referential-import", - _("tutti.action.importTemporaryReferential"), - _("tutti.action.importTemporaryReferential.tip"), - true, - TuttiScreen.IMPORT_TEMPORARY_REFERENTIAL); + super(handler, true, TuttiScreen.IMPORT_TEMPORARY_REFERENTIAL); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -33,66 +33,98 @@ #menuFile { text: "tutti.menu.file"; - toolTipText: "tutti.menu.file.tip"; + toolTipText: "tuttihelp.main.action.file.tip"; mnemonic: F; } #menuFileConfiguration { + actionIcon: config; text: "tutti.action.configuration"; - toolTipText: "tutti.action.configuration.tip"; - actionIcon: config; + toolTipText: "tuttihelp.main.action.configuration.tip"; mnemonic: C; _help: {"tuttihelp.main.menu.action.configuration.help"}; } #menuFileExit { + actionIcon: exit; + text: "tutti.action.exit"; + toolTipText: "tuttihelp.main.action.exit.tip"; + mnemonic: Q; _tuttiAction: {CloseApplicationAction.class}; _help: {"tuttihelp.main.menu.action.exit.help"}; } #menuActionUpdate { + actionIcon: update-application; + text: "tutti.action.updateApplication"; + toolTipText: "tuttihelp.main.action.updateApplication.tip"; + mnemonic: M; _tuttiAction: {UpdateApplicationAction.class}; _help: {"tuttihelp.main.menu.action.updateApplication.help"}; } #menuActionManageDb { + actionIcon: manage-db; + text: "tutti.action.manageDb"; + toolTipText: "tuttihelp.main.action.manageDb.tip"; + mnemonic: D; enabled: {model.getScreen() != TuttiScreen.MANAGE_DB}; _tuttiAction: {ManageDbAction.class}; _help: {"tuttihelp.main.menu.action.manageDb.help"}; } #menuActions { - enabled: {model.isDbLoaded()}; text: "tutti.menu.actions"; - toolTipText: "tutti.menu.actions.tip"; + toolTipText: "tuttihelp.main.action.actions.tip"; mnemonic: A; + enabled: {model.isDbLoaded()}; } #menuActionSelectCruise { + actionIcon: home; + text: "tutti.action.selectCruise"; + toolTipText: "tuttihelp.main.action.selectCruise.tip"; enabled: {model.getScreen() != TuttiScreen.SELECT_CRUISE}; + mnemonic: S; _tuttiAction: {SelectCruiseAction.class}; _help: {"tuttihelp.main.menu.action.selectCruise.help"}; } #menuActionEditProgram { + actionIcon: program; + text: "tutti.action.editSelectedProgram"; + toolTipText: "tuttihelp.main.action.editProgram.tip"; + mnemonic: d; enabled: {model.getScreen() != TuttiScreen.EDIT_PROGRAM && model.isProgramFilled()}; _tuttiAction: {EditSelectedProgramAction.class}; _help: {"tuttihelp.main.menu.action.editProgram.help"}; } #menuActionEditCruise { + actionIcon: cruise; + text: "tutti.action.editSelectedCruise"; + toolTipText: "tuttihelp.main.action.editSelectedCruise.tip"; + mnemonic: C; enabled: {model.getScreen() != TuttiScreen.EDIT_CRUISE && model.isCruiseFilled()}; _tuttiAction: {EditSelectedCruiseAction.class}; _help: {"tuttihelp.main.menu.action.editCruise.help"}; } #menuActionEditProtocol { + actionIcon: protocol; + text: "tutti.action.editSelectedProtocol"; + toolTipText: "tuttihelp.main.action.editSelectedProtocol.tip"; + mnemonic: P; enabled: {model.getScreen() != TuttiScreen.EDIT_PROTOCOL && model.isProtocolFilled()}; _tuttiAction: {EditSelectedProtocolAction.class}; _help: {"tuttihelp.main.menu.action.editProtocol.help"}; } #menuActionEditCatches { + actionIcon: edit; + text: "tutti.action.editCatches"; + toolTipText: "tuttihelp.main.action.editCatches.tip"; + mnemonic: a; enabled: {( !TuttiUIContext.VALIDATION_CONTEXT_EDIT.equals(model.getValidationContext()) || model.getScreen() != TuttiScreen.EDIT_FISHING_OPERATION @@ -102,6 +134,10 @@ } #menuActionValidateCatches { + actionIcon: validate; + text: "tutti.action.validateCatches"; + toolTipText: "tuttihelp.main.action.validateCatches.tip"; + mnemonic: V; enabled: {( !TuttiUIContext.VALIDATION_CONTEXT_VALIDATE.equals(model.getValidationContext()) || model.getScreen() != TuttiScreen.EDIT_FISHING_OPERATION @@ -111,13 +147,17 @@ } #menuAdministration { - enabled: {model.isDbLoaded()}; text: "tutti.menu.administration"; - toolTipText: "tutti.menu.administration.tip"; + toolTipText: "tuttihelp.main.action.administration.tip"; mnemonic: A; + enabled: {model.isDbLoaded()}; } #menuImportTemporaryReferential { + actionIcon: temporary-referential-import; + text: "tutti.action.importTemporaryReferential"; + toolTipText: "tuttihelp.main.action.importTemporaryReferential.tip"; + mnemonic: I; enabled: {model.getScreen() != TuttiScreen.IMPORT_TEMPORARY_REFERENTIAL}; _tuttiAction: {ImportTemporaryReferentialAction.class}; _help: {"tuttihelp.main.menu.action.importTemporaryReferential.help"}; @@ -125,21 +165,21 @@ #menuHelp { text: "tutti.menu.help"; - toolTipText: "tutti.menu.help.tip"; + toolTipText: "tuttihelp.menu.action.help.tip"; mnemonic: E; } #menuHelpSite { + actionIcon: site; text: "tutti.action.site"; - toolTipText: "tutti.action.site.tip"; - actionIcon: site; + toolTipText: "tuttihelp.main.action.site.tip"; mnemonic: S; _help: {"tuttihelp.main.menu.action.site.help"}; } #menuHelpAbout { text: "tutti.action.about"; - toolTipText: "tutti.action.about.tip"; + toolTipText: "tuttihelp.main.action.about.tip"; actionIcon: about; mnemonic: A; _help: {"tuttihelp.main.menu.action.about.help"}; @@ -156,8 +196,8 @@ } #showHelp { - toolTipText:"tutti.action.showHelp.tip"; actionIcon:"show-help"; + toolTipText:"tuttihelp.main.action.showHelp.tip"; _help: {"tuttihelp.main.menu.action.showHelp.help"}; } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.jaxx 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.jaxx 2013-03-11 10:01:36 UTC (rev 572) @@ -21,7 +21,8 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> -<JFrame id='mainFrame' onWindowClosing='menuFileExit.getAction().actionPerformed(null)' +<JFrame id='mainFrame' + onWindowClosing='menuFileExit.getAction().actionPerformed(null)' implements='fr.ifremer.tutti.ui.swing.util.TuttiUI<TuttiUIContext, MainUIHandler>' width='800' height='600' decorator='help'> Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -24,6 +24,7 @@ * #L% */ +import com.ezware.oxbow.swingbits.util.Preconditions; import fr.ifremer.tutti.persistence.entities.data.Cruise; import fr.ifremer.tutti.persistence.entities.data.Program; import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; @@ -134,18 +135,21 @@ JToolBar bar = ui.getBottomBar(); ui.getStatus().addWidget(bar, 0); - if (!context.isDbExist()) { + if (context.isDbExist()) { + // open tutti db (using a fake button to have simple api) + TuttiUIAction<OpenDbAction> uiAction = createUIAction(null, OpenDbAction.class); + OpenDbAction logicAction = uiAction.getLogicAction(); + logicAction.setSkipCheckCurrentScreen(true); + logicAction.setActionDescription(_("tuttihelp.dbManager.action.openDb.tip")); + uiAction.actionPerformed(null); + } else { + // clean db context context.clearDbContext(); // go to manage db screen (to install db) context.setScreen(TuttiScreen.MANAGE_DB); - } else { - - // open tutti db - TuttiUIAction<OpenDbAction> openDbAction = createAction(OpenDbAction.class); - openDbAction.actionPerformed(null); } } @@ -246,7 +250,7 @@ @Override public final void showInformationMessage(String message) { - ui.getStatus().setStatus("<html><body>"+message+"</body></html>"); + ui.getStatus().setStatus("<html><body>" + message + "</body></html>"); } public void registerValidator(SwingValidator validator) { @@ -261,6 +265,7 @@ public boolean quitCurrentScreen() { TuttiUI<?, ?> body = (TuttiUI<?, ?>) currentBody; + Preconditions.checkNotNull(currentBody); AbstractTuttiUIHandler<?, ?> handler = body.getHandler(); boolean canClose; if (handler instanceof CloseableUI) { Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/ManageDbAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/ManageDbAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/ManageDbAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -26,8 +26,6 @@ import fr.ifremer.tutti.ui.swing.TuttiScreen; -import static org.nuiton.i18n.I18n._; - /** * To manage db in Tutti. * @@ -37,13 +35,7 @@ public class ManageDbAction extends AbstractChangeScreenAction { public ManageDbAction(MainUIHandler handler) { - super(handler, - "manage-db", - _("tutti.action.manageDb"), - _("tutti.action.manageDb.tip"), - true, - TuttiScreen.MANAGE_DB); -// setMnemonic('P'); + super(handler, true, TuttiScreen.MANAGE_DB); } } \ No newline at end of file Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/SelectCruiseAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/SelectCruiseAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/SelectCruiseAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -26,8 +26,6 @@ import fr.ifremer.tutti.ui.swing.TuttiScreen; -import static org.nuiton.i18n.I18n._; - /** * Opens the cruise selection screen (home). * @@ -37,13 +35,7 @@ public class SelectCruiseAction extends AbstractChangeScreenAction { public SelectCruiseAction(MainUIHandler handler) { - super(handler, - "home", - _("tutti.action.selectCruise"), - _("tutti.action.selectCruise.tip"), - true, - TuttiScreen.SELECT_CRUISE); -// setMnemonic('S'); + super(handler, true, TuttiScreen.SELECT_CRUISE); } } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/UpdateApplicationAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/UpdateApplicationAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/UpdateApplicationAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -36,8 +36,6 @@ import java.io.File; -import static org.nuiton.i18n.I18n._; - /** * To update jre / i18n or tutti using the {@link ApplicationUpdater} mecanism. * @@ -51,11 +49,7 @@ LogFactory.getLog(UpdateApplicationAction.class); public UpdateApplicationAction(MainUIHandler handler) { - super(handler, - "update-application", - _("tutti.action.updateApplication"), - _("tutti.action.updateApplication.tip"), - true); + super(handler, true); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/UpdateReferentialAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/UpdateReferentialAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/UpdateReferentialAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -34,8 +34,6 @@ import java.io.File; -import static org.nuiton.i18n.I18n._; - /** * To update referential using the {@link ApplicationUpdater} mecanism. * @@ -49,11 +47,7 @@ LogFactory.getLog(UpdateReferentialAction.class); public UpdateReferentialAction(MainUIHandler handler) { - super(handler, - "update-referential", - _("tutti.action.updateReferential"), - _("tutti.action.updateReferential.tip"), - true); + super(handler, true); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/ValidateSelectedCruiseCatchesAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/ValidateSelectedCruiseCatchesAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/ValidateSelectedCruiseCatchesAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -30,8 +30,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import static org.nuiton.i18n.I18n._; - /** * Opens the catches validation screen to edit the selected catches. * @@ -45,12 +43,7 @@ LogFactory.getLog(ValidateSelectedCruiseCatchesAction.class); public ValidateSelectedCruiseCatchesAction(MainUIHandler handler) { - super(handler, - "validate", - _("tutti.action.validateCatches"), - _("tutti.action.validateCatches.tip"), - true, - TuttiScreen.EDIT_FISHING_OPERATION); + super(handler, true, TuttiScreen.EDIT_FISHING_OPERATION); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/CancelEditCruiseAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/CancelEditCruiseAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/CancelEditCruiseAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -28,8 +28,6 @@ import fr.ifremer.tutti.ui.swing.content.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; -import static org.nuiton.i18n.I18n._; - /** * Cancels the edition of a cruise. * @@ -39,13 +37,7 @@ public class CancelEditCruiseAction extends AbstractChangeScreenAction { public CancelEditCruiseAction(MainUIHandler handler) { - super(handler, - "cancel", - _("tutti.action.cancel.editCruise"), - _("tutti.action.cancel.editCruise.tip"), - true, - TuttiScreen.SELECT_CRUISE - ); + super(handler, true, TuttiScreen.SELECT_CRUISE); setSkipCheckCurrentScreen(true); } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -225,12 +225,20 @@ } #saveButton { + actionIcon: save; + text: "tutti.action.saveCruise"; + toolTipText: "tuttihelp.editCruise.action.saveCruise.tip"; + mnemonic: E; _tuttiAction: {SaveCruiseAction.class}; enabled: {model.isModify() && model.isValid()}; _help: {"tuttihelp.editCruise.action.save.help"}; } #cancelButton { + actionIcon: cancel; + text: "tutti.action.cancelEditCruise"; + toolTipText: "tuttihelp.editCruise.action.cancelEditCruise.tip"; + mnemonic: A; _tuttiAction: {CancelEditCruiseAction.class}; _help: {"tuttihelp.editCruise.action.cancel.help"}; } @@ -238,8 +246,9 @@ #generateNameButton { actionIcon: generate; text: "tutti.action.generateCampaignName"; + toolTipText: "tuttihelp.editCruise.action.generateName.tip"; + mnemonic: G; enabled: {model.isCanGenerateName()}; - toolTipText: "tuttihelp.editCruise.action.generateName.tip"; _help: {"tuttihelp.editCruise.action.generateName.help"}; } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -230,8 +230,8 @@ @Override public void onCloseUI() { - if (log.isInfoEnabled()) { - log.info("closing: " + ui); + if (log.isDebugEnabled()) { + log.debug("closing: " + ui); } clearValidators(); Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/SaveCruiseAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/SaveCruiseAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/SaveCruiseAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -41,12 +41,7 @@ public class SaveCruiseAction extends AbstractTuttiAction<EditCruiseUIModel, EditCruiseUI, EditCruiseUIHandler> { public SaveCruiseAction(EditCruiseUIHandler handler) { - super(handler, - "save", - _("tutti.action.saveCruise"), - _("tutti.action.saveCruise.tip"), - true - ); + super(handler, true); } /** @@ -80,10 +75,10 @@ } @Override - public void postAction(Throwable error) { - super.postAction(error); + public void postSuccessAction() { getContext().getMainUI().getHandler().setBodyTitle( EditCruiseUIHandler.getTitle(true)); + } } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/CloseDbAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/CloseDbAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/CloseDbAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -26,7 +26,7 @@ import fr.ifremer.tutti.persistence.config.TuttiPersistenceConfig; import fr.ifremer.tutti.ui.swing.TuttiScreen; -import fr.ifremer.tutti.ui.swing.content.AbstractMainUITuttiAction; +import fr.ifremer.tutti.ui.swing.content.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -39,19 +39,17 @@ * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class CloseDbAction extends AbstractMainUITuttiAction { +public class CloseDbAction extends AbstractChangeScreenAction { /** Logger. */ private static final Log log = LogFactory.getLog(CloseDbAction.class); public CloseDbAction(MainUIHandler handler) { - super(handler, - "close-db", - _("tutti.action.closeDb"), - _("tutti.action.closeDb.tip"), - true); + super(handler, true, TuttiScreen.MANAGE_DB); } + String jdbcUrl; + @Override protected void doAction() { @@ -59,7 +57,7 @@ log.info("Will close db..."); } - String jdbcUrl = TuttiPersistenceConfig.getInstance().getJdbcUrl(); + jdbcUrl = TuttiPersistenceConfig.getInstance().getJdbcUrl(); // clear all caches getContext().getPersistenceService().clearAllCaches(); @@ -72,13 +70,14 @@ // clean db context getContext().clearDbContext(); + } - // make sure title is reloaded - getUI().getHandler().changeTitle(); + @Override + public void postSuccessAction() { - sendMessage(String.format("La base de données '%s' est fermée.", jdbcUrl)); + sendMessage(_("tutti.flash.information.db.closed", jdbcUrl)); - // goto the only screen possible in this state - getContext().setScreen(TuttiScreen.MANAGE_DB); + // make sure title is reloaded + getUI().getHandler().changeTitle(); } } \ No newline at end of file Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -21,6 +21,11 @@ * <http://www.gnu.org/licenses/gpl-3.0.html>. * #L% */ + +#dbManagerTopPanel { + _help: {"tuttihelp.dbManager.help"}; +} + #informationLabel { actionIcon: information; text: {handler.updateMessage(model.isDbExist(), model.isDbLoaded())}; @@ -32,7 +37,12 @@ } #installDbButton { + actionIcon: install-db; + text: "tutti.action.installDb"; + mnemonic: I; _tuttiAction: {InstallDbAction.class}; + toolTipText: "tuttihelp.dbManager.action.installDb.tip"; + _help: {"tuttihelp.dbManager.action.installDb.help"}; } #withDbActions { @@ -40,21 +50,41 @@ } #openDbButton { + actionIcon: open-db; + text: "tutti.action.openDb"; + mnemonic: O; enabled: {!model.isDbLoaded()}; _tuttiAction: {OpenDbAction.class}; + toolTipText: "tuttihelp.dbManager.action.openDb.tip"; + _help: {"tuttihelp.dbManager.action.openDb.help"}; } #upgradeDbButton { + actionIcon: update-referential; + text: "tutti.action.upgradeDb"; + mnemonic: U; enabled: {model.isDbLoaded()}; _tuttiAction: {UpdateReferentialAction.class}; + toolTipText: "tuttihelp.dbManager.action.upgradeDb.tip"; + _help: {"tuttihelp.dbManager.action.upgradeDb.help"}; } #closeDbButton { + actionIcon: close-db; + text: "tutti.action.closeDb"; + mnemonic: C; enabled: {model.isDbLoaded()}; _tuttiAction: {CloseDbAction.class}; + toolTipText: "tuttihelp.dbManager.action.closeDb.tip"; + _help: {"tuttihelp.dbManager.action.closeDb.help"}; } #exportDbButton { + actionIcon: export-db; + text: "tutti.action.exportDb"; + mnemonic: E; enabled: {model.isDbLoaded()}; _tuttiAction: {ExportDbAction.class}; + toolTipText: "tuttihelp.dbManager.action.exportDb.tip"; + _help: {"tuttihelp.dbManager.action.exportDb.help"}; } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUI.jaxx 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUI.jaxx 2013-03-11 10:01:36 UTC (rev 572) @@ -21,14 +21,14 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> -<JPanel id='noDbUITopPanel' layout='{new BorderLayout()}' +<JPanel id='dbManagerTopPanel' layout='{new BorderLayout()}' decorator='help' implements='fr.ifremer.tutti.ui.swing.util.TuttiUI<TuttiUIContext, DbManagerUIHandler>'> <import> - - fr.ifremer.tutti.ui.swing.util.TuttiUI + fr.ifremer.tutti.ui.swing.TuttiHelpBroker fr.ifremer.tutti.ui.swing.TuttiUIContext fr.ifremer.tutti.ui.swing.content.UpdateReferentialAction + fr.ifremer.tutti.ui.swing.util.TuttiUI static org.nuiton.i18n.I18n._ </import> @@ -53,6 +53,9 @@ <TuttiUIContext id='model' initializer='getContextValue(TuttiUIContext.class)'/> + <TuttiHelpBroker id='broker' + constructorParams='"tuttihelp.dbManager.help"'/> + <JLabel id='informationLabel' constraints='BorderLayout.CENTER'/> <JPanel id='centerPanel' layout='{new BorderLayout()}' constraints='BorderLayout.SOUTH'> 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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/ExportDbAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -50,15 +50,12 @@ protected File file; public ExportDbAction(MainUIHandler handler) { - super(handler, - "export-db", - _("tutti.action.exportDb"), - _("tutti.action.exportDb.tip"), - true); + super(handler, true); } @Override protected boolean prepareAction() throws Exception { + file = null; boolean doAction = super.prepareAction(); if (doAction) { @@ -89,12 +86,6 @@ } @Override - protected void releaseAction() { - file = null; - super.releaseAction(); - } - - @Override protected void doAction() { Preconditions.checkNotNull(file); if (log.isInfoEnabled()) { @@ -103,6 +94,12 @@ getContext().getPersistenceService().exportDb(file); + + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); sendMessage(_("tutti.flash.information.db.exported", file)); } } \ No newline at end of file Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/InstallDbAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/InstallDbAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/InstallDbAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -51,11 +51,7 @@ LogFactory.getLog(InstallDbAction.class); public InstallDbAction(MainUIHandler handler) { - super(handler, - "install-db", - _("tutti.action.installDb"), - _("tutti.action.installDb.tip"), - true); + super(handler, true); } @Override @@ -80,16 +76,19 @@ up.update(url, current, dest, false, callback); - sendMessage("Nouvelle base de données installée."); + progressionModel.setMessage("Ouverture de la base de données"); - String jdbcUrl = TuttiPersistenceConfig.getInstance().getJdbcUrl(); - - progressionModel.setMessage(String.format("Ouverture de la base de données *%s*.", jdbcUrl)); - getContext().setDbExist(true); // open db - runAction(new OpenDbAction(getHandler())); + runAction(getHandler().createLogicAction(OpenDbAction.class)); } + @Override + public void postSuccessAction() { + super.postSuccessAction(); + String jdbcUrl = TuttiPersistenceConfig.getInstance().getJdbcUrl(); + + sendMessage(_("tutti.flash.information.db.installed.", jdbcUrl)); + } } \ No newline at end of file Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/OpenDbAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/OpenDbAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/OpenDbAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -26,7 +26,7 @@ import fr.ifremer.tutti.persistence.config.TuttiPersistenceConfig; import fr.ifremer.tutti.ui.swing.TuttiScreen; -import fr.ifremer.tutti.ui.swing.content.AbstractMainUITuttiAction; +import fr.ifremer.tutti.ui.swing.content.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -39,21 +39,17 @@ * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class OpenDbAction extends AbstractMainUITuttiAction { +public class OpenDbAction extends AbstractChangeScreenAction { /** Logger. */ private static final Log log = LogFactory.getLog(OpenDbAction.class); public OpenDbAction(MainUIHandler handler) { - super(handler, - "open-db", - _("tutti.action.openDb"), - _("tutti.action.openDb.tip"), - true); + super(handler, true, TuttiScreen.SELECT_CRUISE); } @Override - public void doAction() { + public void doAction() throws Exception { if (log.isDebugEnabled()) { log.debug("Will open db..."); @@ -61,18 +57,21 @@ getContext().setDbLoaded(true); getHandler().reloadPersistenceService(); - String jdbcUrl = TuttiPersistenceConfig.getInstance().getJdbcUrl(); - - sendMessage(String.format("La base de données '%s' est ouverte.", jdbcUrl)); - if (log.isDebugEnabled()) { log.debug("Check db context"); } getContext().checkDbContext(); + super.doAction(); + } + + @Override + public void postSuccessAction() { + + String jdbcUrl = TuttiPersistenceConfig.getInstance().getJdbcUrl(); + sendMessage(_("tutti.flash.information.db.opened", jdbcUrl)); + // make sure title is reloaded getUI().getHandler().changeTitle(); - - getContext().setScreen(TuttiScreen.SELECT_CRUISE); } } \ No newline at end of file Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/CloneProtocolAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/CloneProtocolAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/CloneProtocolAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -33,8 +33,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import static org.nuiton.i18n.I18n._; - /** * Opens the protocol creation screen with the data of an already existing protocol. * @@ -49,13 +47,7 @@ public static final JAXXContextEntryDef<TuttiProtocol> CLONE_PROTOCOL_ENTRY = new JAXXContextEntryDef<TuttiProtocol>("cloneProtocol", TuttiProtocol.class); public CloneProtocolAction(MainUIHandler handler) { - super(handler, - "copy", - _("tutti.action.cloneProtocol"), - _("tutti.action.cloneProtocol.tip"), - true, - TuttiScreen.EDIT_PROTOCOL - ); + super(handler, true, TuttiScreen.EDIT_PROTOCOL); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/DeleteProtocolAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/DeleteProtocolAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/DeleteProtocolAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -48,12 +48,7 @@ private static final Log log = LogFactory.getLog(EditProtocolAction.class); public DeleteProtocolAction(SelectCruiseUIHandler handler) { - super(handler, - "delete", - _("tutti.action.deleteProtocol"), - _("tutti.action.deleteProtocol.tip"), - false - ); + super(handler, false); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/EditCatchesAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/EditCatchesAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/EditCatchesAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -32,8 +32,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import static org.nuiton.i18n.I18n._; - /** * Opens the catches edition screen. * @@ -46,13 +44,7 @@ private static final Log log = LogFactory.getLog(EditCatchesAction.class); public EditCatchesAction(MainUIHandler handler) { - super(handler, - "edit", - _("tutti.action.editCatches"), - _("tutti.action.editCatches.tip"), - true, - TuttiScreen.EDIT_FISHING_OPERATION - ); + super(handler, true, TuttiScreen.EDIT_FISHING_OPERATION); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/EditCruiseAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/EditCruiseAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/EditCruiseAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -29,8 +29,6 @@ import fr.ifremer.tutti.ui.swing.content.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; -import static org.nuiton.i18n.I18n._; - /** * Opens the cruise edition screen. * @@ -40,13 +38,7 @@ public class EditCruiseAction extends AbstractChangeScreenAction { public EditCruiseAction(MainUIHandler handler) { - super(handler, - "edit", - _("tutti.action.editCruise"), - _("tutti.action.editCruise.tip"), - true, - TuttiScreen.EDIT_CRUISE - ); + super(handler, true, TuttiScreen.EDIT_CRUISE); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/EditProgramAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/EditProgramAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/EditProgramAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -31,8 +31,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import static org.nuiton.i18n.I18n._; - /** * Opens the program edition screen. * @@ -45,13 +43,7 @@ private static final Log log = LogFactory.getLog(EditProgramAction.class); public EditProgramAction(MainUIHandler handler) { - super(handler, - "edit", - _("tutti.action.editProgram"), - _("tutti.action.editProgram.tip"), - true, - TuttiScreen.EDIT_PROGRAM - ); + super(handler, true, TuttiScreen.EDIT_PROGRAM); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/EditProtocolAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/EditProtocolAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/EditProtocolAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -31,8 +31,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import static org.nuiton.i18n.I18n._; - /** * Opens the protocol edition screen. * @@ -45,13 +43,7 @@ private static final Log log = LogFactory.getLog(EditProtocolAction.class); public EditProtocolAction(MainUIHandler handler) { - super(handler, - "edit", - _("tutti.action.editProtocol"), - _("tutti.action.editProtocol.tip"), - true, - TuttiScreen.EDIT_PROTOCOL - ); + super(handler, true, TuttiScreen.EDIT_PROTOCOL); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/ExportProtocolAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/ExportProtocolAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/ExportProtocolAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -25,8 +25,8 @@ */ import com.ezware.oxbow.swingbits.util.Preconditions; -import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.TuttiIOUtil; +import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.service.protocol.TuttiProtocolImportExportService; import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; import fr.ifremer.tutti.ui.swing.util.action.AbstractTuttiAction; @@ -52,12 +52,7 @@ protected File file; public ExportProtocolAction(SelectCruiseUIHandler handler) { - super(handler, - "export", - _("tutti.action.exportProtocol"), - _("tutti.action.exportProtocol.tip"), - true - ); + super(handler, true); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/ImportProtocolAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/ImportProtocolAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/ImportProtocolAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -56,13 +56,7 @@ private File file; public ImportProtocolAction(MainUIHandler handler) { - super(handler, - "import", - _("tutti.action.importProtocol"), - _("tutti.action.importProtocol.tip"), - true, - TuttiScreen.EDIT_PROTOCOL - ); + super(handler, true, TuttiScreen.EDIT_PROTOCOL); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/NewCruiseAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/NewCruiseAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/NewCruiseAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -28,8 +28,6 @@ import fr.ifremer.tutti.ui.swing.content.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; -import static org.nuiton.i18n.I18n._; - /** * Opens the cruise creation screen. * @@ -39,13 +37,7 @@ public class NewCruiseAction extends AbstractChangeScreenAction { public NewCruiseAction(MainUIHandler handler) { - super(handler, - "add", - _("tutti.action.newCruise"), - _("tutti.action.newCruise.tip"), - true, - TuttiScreen.EDIT_CRUISE - ); + super(handler, true, TuttiScreen.EDIT_CRUISE); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/NewProgramAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/NewProgramAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/NewProgramAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -28,8 +28,6 @@ import fr.ifremer.tutti.ui.swing.content.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; -import static org.nuiton.i18n.I18n._; - /** * Opens the program creation screen. * @@ -39,13 +37,7 @@ public class NewProgramAction extends AbstractChangeScreenAction { public NewProgramAction(MainUIHandler handler) { - super(handler, - "add", - _("tutti.action.newProgram"), - _("tutti.action.newProgram.tip"), - true, - TuttiScreen.EDIT_PROGRAM - ); + super(handler, true, TuttiScreen.EDIT_PROGRAM); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/NewProtocolAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/NewProtocolAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/NewProtocolAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -28,8 +28,6 @@ import fr.ifremer.tutti.ui.swing.content.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; -import static org.nuiton.i18n.I18n._; - /** * Opens the protocol creation screen. * @@ -39,13 +37,7 @@ public class NewProtocolAction extends AbstractChangeScreenAction { public NewProtocolAction(MainUIHandler handler) { - super(handler, - "add", - _("tutti.action.newProtocol"), - _("tutti.action.newProtocol.tip"), - true, - TuttiScreen.EDIT_PROTOCOL - ); + super(handler, true, TuttiScreen.EDIT_PROTOCOL); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -28,9 +28,15 @@ bean: {model}; } +#selectCruiseTopPanel { + _help: {"tuttihelp.selectCruise.help"}; +} + #programLabel { text: "tutti.label.program"; actionIcon: program; + toolTipText: "tuttihelp.selectCruise.field.program.tip"; + _help: {"tuttihelp.selectCruise.field.program.help"}; } #programCombobox { @@ -42,18 +48,30 @@ } #editProgramButton { + actionIcon: edit; + text: "tutti.action.editProgram"; + mnemonic: E; enabled: {model.isProgramFound()}; _tuttiAction: {EditProgramAction.class}; + toolTipText: "tuttihelp.selectCruise.action.editProgram.tip"; + _help: {"tuttihelp.selectCruise.action.editProgram.help"}; } #newProgramButton { + actionIcon: add; + text: "tutti.action.newProgram"; + mnemonic: N; _tuttiAction: {NewProgramAction.class}; + toolTipText: "tuttihelp.selectCruise.action.newProgram.tip"; + _help: {"tuttihelp.selectCruise.action.newProgram.help"}; } #cruiseLabel { text: "tutti.label.cruise"; labelFor: {cruiseCombobox}; actionIcon: cruise; + toolTipText: "tuttihelp.selectCruise.field.cruise.tip"; + _help: {"tuttihelp.selectCruise.field.cruise.help"}; } #cruiseCombobox { @@ -64,19 +82,31 @@ } #editCruiseButton { + actionIcon: edit; + text: "tutti.action.editCruise"; + mnemonic: E; enabled: {model.isProgramFound() && model.isCruiseFound()}; _tuttiAction: {EditCruiseAction.class}; + toolTipText: "tuttihelp.selectCruise.action.editCruise.tip"; + _help: {"tuttihelp.selectCruise.action.editCruise.help"}; } #newCruiseButton { + actionIcon: add; + text: "tutti.action.newCruise"; + mnemonic: N; enabled: {model.isProgramFound()}; _tuttiAction: {NewCruiseAction.class}; + toolTipText: "tuttihelp.selectCruise.action.newCruise.tip"; + _help: {"tuttihelp.selectCruise.action.newCruise.help"}; } #protocolLabel { text: "tutti.label.protocol"; labelFor: {protocolCombobox}; actionIcon: protocol; + toolTipText: "tuttihelp.selectCruise.field.protocol.tip"; + _help: {"tuttihelp.selectCruise.field.protocol.help"}; } #protocolCombobox { @@ -87,22 +117,86 @@ } #newProtocolComboBox { - model: {handler.newComboActionModel(NewProtocolAction.class, ImportProtocolAction.class)}; + model: {handler.newComboModel(newProtocolButton, importProtocolButton)}; renderer: {new ActionListCellRenderer()}; } #editProtocolComboBox { - model: {handler.newComboActionModel(EditProtocolAction.class, CloneProtocolAction.class, ExportProtocolAction.class, DeleteProtocolAction.class)}; + model: {handler.newComboModel(editProtocolButton, cloneProtocolButton, exportProtocolButton, deleteProtocolButton)}; enabled: {model.isProtocolFound()}; renderer: {new ActionListCellRenderer()}; } +#newProtocolButton { + actionIcon: add; + text: "tutti.action.newProtocol"; + mnemonic: N; + _tuttiAction: {NewProtocolAction.class}; + toolTipText: "tuttihelp.selectCruise.action.newProtocol.tip"; + _help: {"tuttihelp.selectCruise.action.newProtocol.help"}; +} + +#importProtocolButton { + actionIcon: import; + text: "tutti.action.importProtocol"; + mnemonic: I; + _tuttiAction: {ImportProtocolAction.class}; + toolTipText: "tuttihelp.selectCruise.action.importProtocol.tip"; + _help: {"tuttihelp.selectCruise.action.importProtocol.help"}; +} + +#editProtocolButton { + actionIcon: edit; + text: "tutti.action.editProtocol"; + mnemonic: E; + _tuttiAction: {EditProtocolAction.class}; + toolTipText: "tuttihelp.selectCruise.action.editProtocol.tip"; + _help: {"tuttihelp.selectCruise.action.editProtocol.help"}; +} + +#cloneProtocolButton { + actionIcon: copy; + text: "tutti.action.cloneProtocol"; + mnemonic: C; + _tuttiAction: {CloneProtocolAction.class}; + toolTipText: "tuttihelp.selectCruise.action.cloneProtocol.tip"; + _help: {"tuttihelp.selectCruise.action.cloneProtocol.help"}; +} + +#exportProtocolButton { + actionIcon: export; + text: "tutti.action.exportProtocol"; + mnemonic: E; + _tuttiAction: {ExportProtocolAction.class}; + toolTipText: "tuttihelp.selectCruise.action.exportProtocol.tip"; + _help: {"tuttihelp.selectCruise.action.exportProtocol.help"}; +} + +#deleteProtocolButton { + actionIcon: delete; + text: "tutti.action.deleteProtocol"; + mnemonic: D; + _tuttiAction: {DeleteProtocolAction.class}; + toolTipText: "tuttihelp.selectCruise.action.deleteProtocol.tip"; + _help: {"tuttihelp.selectCruise.action.deleteProtocol.help"}; +} + #editCatchesButton { + actionIcon: edit; + text: "tutti.action.editCatches"; + mnemonic: E; _tuttiAction: {EditCatchesAction.class}; enabled: {model.isValid() && uiContext.isCruiseFilled()}; + toolTipText: "tuttihelp.selectCruise.action.editCatches.tip"; + _help: {"tuttihelp.selectCruise.action.editCatches.help"}; } #validateCatchesButton { + actionIcon: validate; + text: "tutti.action.validateCatches"; + toolTipText: "tuttihelp.selectCruise.action.validateCatches.tip"; + mnemonic: V; _tuttiAction: {ValidateCatchesAction.class}; enabled: {model.isValid() && uiContext.isCruiseFilled()}; + _help: {"tuttihelp.selectCruise.action.validateCatches.help"}; } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.jaxx 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.jaxx 2013-03-11 10:01:36 UTC (rev 572) @@ -21,7 +21,7 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> -<JPanel id='homePanel' layout='{new BorderLayout()}' +<JPanel id='selectCruiseTopPanel' layout='{new BorderLayout()}' decorator='help' implements='fr.ifremer.tutti.ui.swing.util.TuttiUI<SelectCruiseUIModel, SelectCruiseUIHandler>'> <import> @@ -29,13 +29,12 @@ fr.ifremer.tutti.persistence.entities.data.Cruise fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol + fr.ifremer.tutti.ui.swing.TuttiHelpBroker + fr.ifremer.tutti.ui.swing.TuttiUIContext fr.ifremer.tutti.ui.swing.util.TuttiUI - fr.ifremer.tutti.ui.swing.TuttiUIContext fr.ifremer.tutti.ui.swing.util.ActionListCellRenderer jaxx.runtime.swing.editor.bean.BeanComboBox - jaxx.runtime.validator.swing.SwingValidatorUtil - jaxx.runtime.validator.swing.SwingValidatorMessageTableModel static org.nuiton.i18n.I18n._ </import> @@ -64,15 +63,23 @@ <SelectCruiseUIModel id='model' initializer='getContextValue(SelectCruiseUIModel.class)'/> - <SwingValidatorMessageTableModel id='errorTableModel'/> - - <BeanValidator id='validator' bean='model' errorTableModel='errorTableModel' + <BeanValidator id='validator' bean='model' uiClass='jaxx.runtime.validator.swing.ui.ImageValidationUI'> <field name='program' component='programCombobox'/> <field name='cruise' component='cruiseCombobox'/> <field name='protocol' component='protocolCombobox'/> </BeanValidator> + <TuttiHelpBroker id='broker' + constructorParams='"tuttihelp.selectCruise.help"'/> + + <JButton id='newProtocolButton'/> + <JButton id='importProtocolButton'/> + <JButton id='editProtocolButton'/> + <JButton id='cloneProtocolButton'/> + <JButton id='exportProtocolButton'/> + <JButton id='deleteProtocolButton'/> + <Table fill='both' constraints='BorderLayout.CENTER'> <row> <cell anchor='west'> @@ -134,4 +141,5 @@ </cell> </row> </Table> + </JPanel> Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -37,7 +37,8 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import javax.swing.Action; +import javax.swing.AbstractButton; +import javax.swing.JButton; import javax.swing.JComboBox; import java.awt.event.ActionEvent; import java.awt.event.MouseEvent; @@ -236,8 +237,8 @@ @Override public void onCloseUI() { - if (log.isInfoEnabled()) { - log.info("closing: " + ui); + if (log.isDebugEnabled()) { + log.debug("closing: " + ui); } PropertyChangeListener[] listeners = getModel().getPropertyChangeListeners(); for (PropertyChangeListener listener : listeners) { @@ -248,39 +249,37 @@ public void startExistingProtocolAction(MouseEvent event) { JComboBox existingProtocolCombo = (JComboBox) event.getSource(); - Action selectedAction = (Action) existingProtocolCombo.getItemAt(0); - selectedAction.actionPerformed(null); + doAction((AbstractButton) existingProtocolCombo.getItemAt(0), null); } public void startExistingProtocolAction(ActionEvent event) { if (!resetEditProtolAction) { JComboBox existingProtocolCombo = (JComboBox) event.getSource(); - Action selectedAction = (Action) existingProtocolCombo.getSelectedItem(); + JButton selectedAction = (JButton) existingProtocolCombo.getSelectedItem(); // hide popup before performing the action, otherwise, if the action // opens a popup, the user must click a first time to hide the combobox // popup to then interact with the popup opened by the action // (see http://forge.codelutin.com/issues/2032) existingProtocolCombo.setSelectedIndex(0); existingProtocolCombo.hidePopup(); - selectedAction.actionPerformed(event); + doAction(selectedAction, event); } } public void startNewProtocolAction(MouseEvent event) { JComboBox newProtocolCombo = (JComboBox) event.getSource(); - Action selectedAction = (Action) newProtocolCombo.getItemAt(0); - selectedAction.actionPerformed(null); + doAction((AbstractButton) newProtocolCombo.getItemAt(0), null); } public void startNewProtocolAction(ActionEvent event) { JComboBox newProtocolCombo = (JComboBox) event.getSource(); - Action selectedAction = (Action) newProtocolCombo.getSelectedItem(); + JButton selectedAction = (JButton) newProtocolCombo.getSelectedItem(); // hide popup before performing the action, otherwise, if the action // opens a popup, the user must click a first time to hide the combobox // popup to then interact with the popup opened by the action // (see http://forge.codelutin.com/issues/2032) newProtocolCombo.setSelectedIndex(0); newProtocolCombo.hidePopup(); - selectedAction.actionPerformed(event); + doAction(selectedAction, event); } } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/ValidateCatchesAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/ValidateCatchesAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/ValidateCatchesAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -32,8 +32,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import static org.nuiton.i18n.I18n._; - /** * Opens the catches validation screen. * @@ -47,13 +45,7 @@ LogFactory.getLog(ValidateCatchesAction.class); public ValidateCatchesAction(MainUIHandler handler) { - super(handler, - "validate", - _("tutti.action.validateCatches"), - _("tutti.action.validateCatches.tip"), - true, - TuttiScreen.EDIT_FISHING_OPERATION - ); + super(handler, true, TuttiScreen.EDIT_FISHING_OPERATION); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/CancelEditFishingOperationAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/CancelEditFishingOperationAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/CancelEditFishingOperationAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -29,8 +29,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import static org.nuiton.i18n.I18n._; - /** * Cancels the edition of a fishing operation and potentially switch to another tab. * @@ -50,44 +48,17 @@ protected EditFishingOperationAction editAction; public CancelEditFishingOperationAction(EditFishingOperationUIHandler handler) { - super(handler, - "cancel", - _("tutti.action.cancel.editFishingOperation"), - _("tutti.action.cancel.editFishingOperation.tip"), - true - ); - - //TODO-TC REmake this works -// getModel().addPropertyChangeListener(EditFishingOperationUIModel.PROPERTY_ID, -// new PropertyChangeListener() { -// -// public void propertyChange(PropertyChangeEvent evt) { -// if (evt.getNewValue() == null) { -// putValue(NAME, _("tutti.action.cancel.editFishingOperation")); -// putValue(SHORT_DESCRIPTION, _("tutti.action.cancel.editFishingOperation.tip")); -// -// } else { -// putValue(NAME, _("tutti.action.reset.editFishingOperation")); -// putValue(SHORT_DESCRIPTION, _("tutti.action.reset.editFishingOperation.tip")); -// } -// } -// }); + super(handler, true); } public EditFishingOperationAction getEditAction() { if (editAction == null) { - editAction = new EditFishingOperationAction(getHandler().getParentUi().getHandler()); + editAction = getHandler().getParentUi().getHandler().createLogicAction( + EditFishingOperationAction.class); } return editAction; } - /** - * If the event source is an EditFishingOperationUIHandler, - * then the tab panel of the parent switch to the index set - * in the ID param of the event. - * - * @throws Exception - */ @Override protected void doAction() throws Exception { @@ -113,6 +84,7 @@ runAction(action); } + //FIXME-TC Make sure this works again // // if called directly from the EditFishingOperationUIHandler: // // the user does not want to save the modifications before // // selecting another tab, we must reload the current tab before setting 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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -48,7 +48,6 @@ import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JTabbedPane; -import javax.swing.SwingUtilities; import java.awt.BorderLayout; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; @@ -148,22 +147,10 @@ }; public EditFishingOperationAction(FishingOperationsUIHandler handler) { - super(handler, - "edit", - null, - _("tutti.action.editFishingOperation.tip"), - true); + super(handler, true); + setActionDescription(_("tutti.action.editFishingOperation.tip")); } - protected EditFishingOperationAction(FishingOperationsUIHandler handler, - String name, - String icon, - String text, - String tip, - boolean hideBody) { - super(handler, icon, text, tip, hideBody); - } - public void setFishingOperation(FishingOperation fishingOperation) { this.fishingOperation = fishingOperation; } @@ -202,9 +189,10 @@ } @Override - protected boolean prepareAction() throws Exception { - boolean canContinue = super.prepareAction(); - if (canContinue && checkPreviousEdit) { + protected boolean prepareAction() { + + boolean canContinue = true; + if (checkPreviousEdit) { FishingOperationsUI ui = getUI(); final FishingOperationsUIModel model = ui.getModel(); @@ -301,7 +289,9 @@ FishingOperation selectFishingOperation; if (TuttiEntities.isNew(editFishingOperation)) { - selectFishingOperation = editFishingOperation; + + // no selection + selectFishingOperation = null; } else { // rollback selected fishing operation selectFishingOperation = @@ -372,13 +362,13 @@ } model.addPropertyChangeListener(coordinatePropertiesListener); + } - SwingUtilities.invokeLater(new Runnable() { - @Override - public void run() { - getUI().repaint(); - } - }); + @Override + public void postSuccessAction() { + super.postSuccessAction(); + getUI().getFishingOperationTabContent().getModel().setModify(false); + getUI().repaint(); } public void loadFishingOperation(FishingOperation bean, Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -554,20 +554,29 @@ } #saveButton { + actionIcon: save; + text: "tutti.action.saveFishingOperation"; + toolTipText: "tuttihelp.editFishingOperation.action.saveEditFishingOperation.tip"; + mnemonic: E; _tuttiAction: {SaveFishingOperationAction.class}; - toolTipText: "tuttihelp.editFishingOperation.action.save.tip"; - _help: {"tuttihelp.editFishingOperation.action.save.help"}; + _help: {"tuttihelp.editFishingOperation.action.saveEditFishingOperation.help"}; } #cancelButton { + actionIcon: cancel; + text: "tutti.action.cancelEditFishingOperation"; + toolTipText: "tuttihelp.editFishingOperation.action.cancelEditFishingOperation.tip"; + mnemonic: A; _tuttiAction: {CancelEditFishingOperationAction.class}; - toolTipText: "tuttihelp.editFishingOperation.action.cancel.tip"; - _help: {"tuttihelp.editFishingOperation.action.cancel.help"}; + _help: {"tuttihelp.editFishingOperation.action.cancelEditFishingOperation.help"}; } #importCasinoButton { + actionIcon: casino-import; + text: "tutti.action.importCasino"; + toolTipText: "tuttihelp.editFishingOperation.action.importCasino.tip"; + mnemonic: I; _tuttiAction: {ImportCasinoAction.class}; enabled: {model.getId() != null}; - toolTipText: "tuttihelp.editFishingOperation.action.importCasino.tip"; _help: {"tuttihelp.editFishingOperation.action.importCasino.help"}; } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUI.jaxx 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUI.jaxx 2013-03-11 10:01:36 UTC (rev 572) @@ -21,7 +21,8 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> -<JPanel id='editFishingOperationTopPanel' layout='{new BorderLayout()}' decorator='help' +<JPanel id='editFishingOperationTopPanel' layout='{new BorderLayout()}' + decorator='help' implements='fr.ifremer.tutti.ui.swing.util.TuttiUI<EditFishingOperationUIModel, EditFishingOperationUIHandler>'> <import> 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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -54,6 +54,7 @@ import org.apache.commons.logging.LogFactory; import org.jdesktop.swingx.JXDatePicker; +import javax.swing.JButton; import javax.swing.JOptionPane; import javax.swing.JTabbedPane; import java.awt.Color; @@ -337,23 +338,46 @@ }); } - // FIXME kmorin 20130222 remove this when we use jaxx 2.5.11 - model.addPropertyChangeListener(EditFishingOperationUIModel.PROPERTY_TRAWL_DISTANCE, new PropertyChangeListener() { +// // FIXME kmorin 20130222 remove this when we use jaxx 2.5.11 +// model.addPropertyChangeListener(EditFishingOperationUIModel.PROPERTY_TRAWL_DISTANCE, new PropertyChangeListener() { +// +// public void propertyChange(PropertyChangeEvent evt) { +// String tooltip = model.getTrawlDistance() != null ? +// _("tutti.tooltip.distanceInMilles", TuttiUIUtil.getDistanceInMilles(model.getTrawlDistance())) : +// null; +// ui.getTrawlDistanceField().getTextField().setToolTipText(tooltip); +// } +// }); - public void propertyChange(PropertyChangeEvent evt) { - String tooltip = model.getTrawlDistance() != null ? - _("tutti.tooltip.distanceInMilles", TuttiUIUtil.getDistanceInMilles(model.getTrawlDistance())) : - null; - ui.getTrawlDistanceField().getTextField().setToolTipText(tooltip); - } - }); + + // listen when id becones empty or not toupdate cancel action and button + getModel().addPropertyChangeListener( + EditFishingOperationUIModel.PROPERTY_ID, + new PropertyChangeListener() { + + public void propertyChange(PropertyChangeEvent evt) { + JButton button = ui.getCancelButton(); + CancelEditFishingOperationAction action = + getLogicAction(button); + if (evt.getNewValue() == null) { + button.setText(_("tutti.action.cancelEditFishingOperation")); + button.setToolTipText(_("tuttihelp.editFishingOperation.action.cancelEditFishingOperation.tip")); + action.setActionDescription(_("tuttihelp.editFishingOperation.action.cancelEditFishingOperation.tip")); + + } else { + button.setText(_("tutti.action.reset.editFishingOperation")); + button.setToolTipText(_("tutti.action.reset.editFishingOperation.tip")); + action.setActionDescription(_("tutti.action.reset.editFishingOperation.tip")); + } + } + }); } @Override public void onCloseUI() { - if (log.isInfoEnabled()) { - log.info("closing: " + ui); + if (log.isDebugEnabled()) { + log.debug("closing: " + ui); } clearValidators(); Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -31,13 +31,19 @@ #fishingOperationsTopPanel { _help: {"tuttihelp.fishingOperations.help"}; } + #newFishingOperationButton { + actionIcon: add; + toolTipText: "tuttihelp.fishingOperations.action.newFishingOperation.tip"; + mnemonic: N; _tuttiAction: {NewFishingOperationAction.class}; + _help: {"tuttihelp.fishingOperations.action.newFishingOperation.help"}; } #fishingOperationComboBox { property: selectedFishingOperation; selectedItem: {model.getSelectedFishingOperation()}; + _help: {"tuttihelp.fishingOperations.field.fishingOperation.help"}; } #catchesTab { Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUI.jaxx 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUI.jaxx 2013-03-11 10:01:36 UTC (rev 572) @@ -21,7 +21,8 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> -<JPanel id='fishingOperationsTopPanel' layout='{new BorderLayout()}' decorator='help' +<JPanel id='fishingOperationsTopPanel' layout='{new BorderLayout()}' + decorator='help' implements='fr.ifremer.tutti.ui.swing.util.TuttiUI<FishingOperationsUIModel, FishingOperationsUIHandler>'> <import> Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -113,7 +113,8 @@ initUI(ui); - editFishingOperationAction = new EditFishingOperationAction(this); + editFishingOperationAction = + createLogicAction(EditFishingOperationAction.class); FishingOperationsUIModel model = getModel(); @@ -146,25 +147,10 @@ } editFishingOperationAction.setFishingOperation(operation); AbstractTuttiAction.runAction(editFishingOperationAction); - -// getModel().setEditFishingOperation(operation); } } }); -// model.addPropertyChangeListener(FishingOperationsUIModel.PROPERTY_EDITED_FISHING_OPERATION, new PropertyChangeListener() { -// @Override -// public void propertyChange(PropertyChangeEvent evt) { -// if (log.isDebugEnabled()) { -// log.debug("propertyChange " + FishingOperationsUIModel.PROPERTY_EDITED_FISHING_OPERATION); -// } -// -// // only rebuild stuff if model is not adjusting -// editFishingOperationAction.setFishingOperation((FishingOperation) evt.getNewValue()); -// editFishingOperationAction.actionPerformed(null); -// -// } -// }); model.addPropertyChangeListener(FishingOperationsUIModel.PROPERTY_FISHING_OPERATION, new PropertyChangeListener() { @Override public void propertyChange(PropertyChangeEvent evt) { @@ -204,17 +190,18 @@ @Override public boolean quitUI() { - //FIXME Make sure this is ok -// boolean result = super.quitUI(nextScreen); - // try to reset current fishing operation, if afterall the fishing operation still - // there, it means user cancel save operation, so stay here - getUI().getFishingOperationComboBox().setSelectedItem(null); -// getModel().setSelectedFishingOperation(null); - boolean result = getModel().getSelectedFishingOperation() == null; -// if (getTabPanel().getSelectedIndex() == 0) { -// result = ui.getFishingOperationTabContent().getHandler().quitUI(nextScreen); -// } - return result; + + // reuse the editFishingOperationAction#prepareAction code + FishingOperation editFishingOperation = getModel().getEditFishingOperation(); + editFishingOperationAction.setFishingOperation(editFishingOperation); + editFishingOperationAction.setCheckPreviousEdit(true); + + try { + boolean result = editFishingOperationAction.prepareAction(); + return result; + } finally { + editFishingOperationAction.releaseAction(); + } } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/ImportCasinoAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/ImportCasinoAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/ImportCasinoAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -26,8 +26,6 @@ import fr.ifremer.tutti.ui.swing.util.action.AbstractTuttiAction; -import static org.nuiton.i18n.I18n._; - /** * @author tchemit <chemit@codelutin.com> * @since 1.0 @@ -35,11 +33,7 @@ public class ImportCasinoAction extends AbstractTuttiAction<EditFishingOperationUIModel, EditFishingOperationUI, EditFishingOperationUIHandler> { public ImportCasinoAction(EditFishingOperationUIHandler handler) { - super(handler, - "casino-import", - _("tutti.action.importCasino"), - _("tutti.action.importCasino.tip"), - true); + super(handler, false); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/NewFishingOperationAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/NewFishingOperationAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/NewFishingOperationAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -31,8 +31,6 @@ import java.util.List; -import static org.nuiton.i18n.I18n._; - /** * To create a new fishing operation. * @@ -42,12 +40,7 @@ public class NewFishingOperationAction extends EditFishingOperationAction { public NewFishingOperationAction(FishingOperationsUIHandler handler) { - super(handler, - "newFishingOperation", - "add", - null, - _("tutti.action.newFishingOperation.tip"), - true); + super(handler); } @Override @@ -71,13 +64,11 @@ Cruise cruise = getDataContext().getCruise(); newFishingOperation.setCruise(cruise); - //TODO Should select vessel from possible one ? List<Vessel> vessels = cruise.getVessel(); if (vessels.size() == 1) { newFishingOperation.setVessel(vessels.get(0)); } - //TODO Should select gear from possible one ? List<Gear> gears = cruise.getGear(); if (gears.size() == 1) { newFishingOperation.setGear(gears.get(0)); Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/SaveFishingOperationAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/SaveFishingOperationAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/SaveFishingOperationAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -39,8 +39,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import static org.nuiton.i18n.I18n._; - /** * Saves a fishing operation and potentially sets another screen or switch to another tab. * @@ -62,12 +60,7 @@ protected boolean updateUI; public SaveFishingOperationAction(EditFishingOperationUIHandler handler) { - super(handler, - "save", - _("tutti.action.saveFishingOperation"), - _("tutti.action.saveFishingOperation.tip"), - true - ); + super(handler, true); } public void setUpdateUI(boolean updateUI) { Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/CancelEditCatchBatchAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/CancelEditCatchBatchAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/CancelEditCatchBatchAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -32,8 +32,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import static org.nuiton.i18n.I18n._; - /** * To cancel edit of a {@link CatchBatch}. * @@ -56,17 +54,12 @@ protected EditFishingOperationAction editAction; public CancelEditCatchBatchAction(EditCatchesUIHandler handler) { - super(handler, - "cancel", - _("tutti.action.reset.editCatchBatch"), - _("tutti.action.reset.editCatchBatch.tip"), - true - ); + super(handler, true); } public EditFishingOperationAction getEditAction() { if (editAction == null) { - editAction = new EditFishingOperationAction(getHandler().getParentHandler()); + editAction = getHandler().getParentHandler().createLogicAction(EditFishingOperationAction.class); } return editAction; } @@ -74,29 +67,21 @@ @Override protected void doAction() throws Exception { - if (getModel().isCreate()) { + // cancel to create a catch batch ? + // Should never happen ? + Preconditions.checkState( + !getModel().isCreate(), + "Can't cancel edition of a not persisted catchBatch!"); - // cancel to create a catch batch ? - // Should never happen ? - Preconditions.checkState( - false, - "Can't cancel edition of a not persisted catchBatch!"); - } else { + if (log.isInfoEnabled()) { + log.info("Can edition of catchBatch (will reload catchBatch)"); + } - if (log.isInfoEnabled()) { - log.info("Can edition of catchBatch (will reload catchBatch)"); - } + FishingOperation operation = getModel().getFishingOperation(); - FishingOperation operation = getModel().getFishingOperation(); + String fishingOperationText = getEditAction().getFishingOperationTitle(operation); - //FIXME-TC Should we also reload other tabs ??? Probably yes - - String fishingOperationText = getEditAction().getFishingOperationTitle(operation); - - getEditAction().loadCatchBatch(operation, fishingOperationText, true); - } - + getEditAction().loadCatchBatch(operation, fishingOperationText, true); } - } \ No newline at end of file Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/ComputeWeightsAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/ComputeWeightsAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/ComputeWeightsAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -34,8 +34,6 @@ import fr.ifremer.tutti.ui.swing.util.action.AbstractTuttiAction; import fr.ifremer.tutti.ui.swing.util.table.AbstractSelectTableAction; import org.apache.commons.collections.CollectionUtils; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import javax.swing.JOptionPane; import java.util.List; @@ -48,16 +46,10 @@ */ public class ComputeWeightsAction extends AbstractTuttiAction<EditCatchesUIModel, EditCatchesUI, EditCatchesUIHandler> { - private static final Log log = LogFactory.getLog(ComputeWeightsAction.class); - protected String errorMessage; public ComputeWeightsAction(EditCatchesUIHandler handler) { - super(handler, - "generate", - _("tutti.action.computeWeights"), - _("tutti.action.computeWeights.tip"), - false); + super(handler, false); } //FIXME Non, y'a des trucs qui vont pas du tout @@ -113,7 +105,7 @@ } } - if (errorMessage!=null) { + if (errorMessage != null) { throw new TuttiBusinessException(errorMessage); } @@ -134,7 +126,7 @@ EditCatchesUI ui = getUI(); List<SpeciesBatchRowModel> roots = getUI().getSpeciesTabContent().getModel().getRows(); - for (int i = 0 ; i < roots.size() ; i++) { + for (int i = 0; i < roots.size(); i++) { SpeciesBatchRowModel row = roots.get(i); if (row.isBatchRoot()) { Float weight = computeSpeciesBatch(row); @@ -184,10 +176,10 @@ // le "Poids total VRAC" est bien une valeur observée // sinon la remplacer par le "Poids total Vrac trié" int answer = JOptionPane.showConfirmDialog(getContext().getActionUI(), - _("tutti.action.computeWeights.replaceTotalSortedWeight.message", rate), - _("tutti.action.computeWeights.replaceTotalSortedWeight.title"), - JOptionPane.YES_NO_OPTION, - JOptionPane.QUESTION_MESSAGE); + _("tutti.action.computeWeights.replaceTotalSortedWeight.message", rate), + _("tutti.action.computeWeights.replaceTotalSortedWeight.title"), + JOptionPane.YES_NO_OPTION, + JOptionPane.QUESTION_MESSAGE); if (answer == JOptionPane.NO_OPTION) { model.setSpeciesTotalSortedWeight(null); Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -44,6 +44,7 @@ #editCatchesTopPanel { _help: {"tuttihelp.editCatchBatch.help"}; } + #catchesCaracteristicsTabToolBar { floatable: false; opaque: false; @@ -68,8 +69,10 @@ #catchTotalWeightLabel { text: "tutti.label.catches.catchTotalWeight"; + toolTipText: {"tuttihelp.editCatchBatch.field.catchTotalWeight.tip"}; labelFor: {catchTotalWeightField}; _strongStyle: true; + _help: {"tuttihelp.editCatchBatch.field.catchTotalWeight.help"}; } #catchTotalWeightField { @@ -79,7 +82,9 @@ #catchTotalSortedWeightLabel { text: "tutti.label.catches.catchTotalSortedWeight"; + toolTipText: {"tuttihelp.editCatchBatch.field.catchTotalSortedWeight.tip"}; labelFor: {catchTotalSortedWeightField}; + _help: {"tuttihelp.editCatchBatch.field.catchTotalSortedWeight.help"}; } #catchTotalSortedWeightField { @@ -89,7 +94,9 @@ #catchTotalSortedTremisWeightLabel { text: "tutti.label.catches.catchTotalSortedTremisWeight"; + toolTipText: {"tuttihelp.editCatchBatch.field.catchTotalSortedTremisWeight.tip"}; labelFor: {catchTotalSortedTremisWeightField}; + _help: {"tuttihelp.editCatchBatch.field.catchTotalSortedTremisWeight.help"}; } #catchTotalSortedTremisWeightField { @@ -99,7 +106,9 @@ #catchTotalSortedCarousselWeightLabel { text: "tutti.label.catches.catchTotalSortedCarousselWeight"; + toolTipText: {"tuttihelp.editCatchBatch.field.catchTotalSortedCarousselWeight.tip"}; labelFor: {catchTotalSortedCarousselWeightField}; + _help: {"tuttihelp.editCatchBatch.field.catchTotalSortedCarousselWeight.help"}; } #catchTotalSortedCarousselWeightField { @@ -109,7 +118,9 @@ #catchTotalRejectedWeightLabel { text: "tutti.label.catches.catchTotalRejectedWeight"; + toolTipText: {"tuttihelp.editCatchBatch.field.catchTotalRejectedWeight.tip"}; labelFor: {catchTotalRejectedWeightField}; + _help: {"tuttihelp.editCatchBatch.field.catchTotalRejectedWeight.help"}; } #catchTotalRejectedWeightField { @@ -119,7 +130,9 @@ #catchTotalUnsortedWeightLabel { text: "tutti.label.catches.catchTotalUnsortedWeight"; + toolTipText: {"tuttihelp.editCatchBatch.field.catchTotalUnsortedWeight.tip"}; labelFor: {catchTotalUnsortedWeightField}; + _help: {"tuttihelp.editCatchBatch.field.catchTotalUnsortedWeight.help"}; } #catchTotalUnsortedWeightField { @@ -142,8 +155,10 @@ #speciesTotalWeightLabel { text: "tutti.label.catches.speciesTotalWeight"; + toolTipText: {"tuttihelp.editCatchBatch.field.speciesTotalWeight.tip"}; labelFor: {speciesTotalWeightField}; _strongStyle: true; + _help: {"tuttihelp.editCatchBatch.field.speciesTotalWeight.help"}; } #speciesTotalWeightField { @@ -153,7 +168,9 @@ #speciesTotalSortedWeightLabel { text: "tutti.label.catches.speciesTotalSortedWeight"; + toolTipText: {"tuttihelp.editCatchBatch.field.speciesTotalSortedWeight.tip"}; labelFor: {speciesTotalSortedWeightField}; + _help: {"tuttihelp.editCatchBatch.field.speciesTotalSortedWeight.help"}; } #speciesTotalSortedWeightField { @@ -167,8 +184,10 @@ #speciesTotalSampleSortedWeightLabel { text: "tutti.label.catches.speciesTotalSampleSortedWeight"; + toolTipText: {"tuttihelp.editCatchBatch.field.speciesTotalSampleSortedWeight.tip"}; labelFor: {speciesTotalSampleSortedWeightField}; _italicStyle: true; + _help: {"tuttihelp.editCatchBatch.field.speciesTotalSampleSortedWeight.help"}; } #speciesTotalSampleSortedWeightField { @@ -178,7 +197,9 @@ #speciesTotalUnsortedWeightLabel { text: "tutti.label.catches.speciesTotalUnsortedWeight"; + toolTipText: {"tuttihelp.editCatchBatch.field.speciesTotalUnsortedWeight.tip"}; labelFor: {speciesTotalUnsortedWeightField}; + _help: {"tuttihelp.editCatchBatch.field.speciesTotalUnsortedWeight.help"}; } #speciesTotalUnsortedWeightField { @@ -192,8 +213,10 @@ #benthosTotalWeightLabel { text: "tutti.label.catches.benthosTotalWeight"; + toolTipText: {"tuttihelp.editCatchBatch.field.benthosTotalWeight.tip"}; labelFor: {benthosTotalWeightField}; _strongStyle: true; + _help: {"tuttihelp.editCatchBatch.field.benthosTotalWeight.help"}; } #benthosTotalWeightField { @@ -202,7 +225,9 @@ #benthosTotalSortedWeightLabel { text: "tutti.label.catches.benthosTotalSortedWeight"; + toolTipText: {"tuttihelp.editCatchBatch.field.benthosTotalSortedWeight.tip"}; labelFor: {benthosTotalSortedWeightField}; + _help: {"tuttihelp.editCatchBatch.field.benthosTotalSortedWeight.help"}; } #benthosTotalSortedWeightField { @@ -211,8 +236,10 @@ #benthosTotalSampleSortedWeightLabel { text: "tutti.label.catches.benthosTotalSampleSortedWeight"; + toolTipText: {"tuttihelp.editCatchBatch.field.benthosTotalSampleSortedWeight.tip"}; labelFor: {benthosTotalSampleSortedWeightField}; _italicStyle: true; + _help: {"tuttihelp.editCatchBatch.field.benthosTotalSampleSortedWeight.help"}; } #benthosTotalSampleSortedWeightField { @@ -221,7 +248,9 @@ #benthosTotalUnsortedWeightLabel { text: "tutti.label.catches.benthosTotalUnsortedWeight"; + toolTipText: {"tuttihelp.editCatchBatch.field.benthosTotalUnsortedWeight.tip"}; labelFor: {benthosTotalUnsortedWeightField}; + _help: {"tuttihelp.editCatchBatch.field.benthosTotalUnsortedWeight.help"}; } #benthosTotalUnsortedWeightField { @@ -234,8 +263,10 @@ #macroWasteTotalWeightLabel { text: "tutti.label.catches.macroWasteTotalWeight"; + toolTipText: {"tuttihelp.editCatchBatch.field.macroWasteTotalWeight.tip"}; labelFor: {macroWasteTotalWeightField}; _strongStyle: true; + _help: {"tuttihelp.editCatchBatch.field.macroWasteTotalWeight.help"}; } #macroWasteTotalWeightField { @@ -243,7 +274,12 @@ } #importPupitriButton { + actionIcon: pupitri-import; + text: "tutti.action.importPupitri"; + toolTipText: "tuttihelp.editCatchBatch.action.importPupitri.tip"; + mnemonic: I; _tuttiAction: {ImportPupitriAction.class}; + _help: {"tuttihelp.editCatchBatch.action.importPupitri.help"}; } #benthosTab { @@ -267,13 +303,28 @@ } #saveButton { + actionIcon: save; + text: "tutti.action.saveCatchBatch"; + toolTipText: "tuttihelp.editCatchBatch.action.saveCatchBatch.tip"; + mnemonic: E; _tuttiAction: {SaveCatchBatchAction.class}; + _help: {"tuttihelp.editCatchBatch.action.saveCatchBatch.help"}; } #cancelButton { + actionIcon: cancel; + text: "tutti.action.cancelEditCatchBatch"; + toolTipText: "tuttihelp.editCatchBatch.action.cancelEditCatchBatch.tip"; + mnemonic: A; _tuttiAction: {CancelEditCatchBatchAction.class}; + _help: {"tuttihelp.editCatchBatch.action.cancelEditCatchBatch.help"}; } #computeSpeciesBatchButton { + actionIcon: generate; + text: "tutti.action.computeWeights"; + toolTipText: "tuttihelp.editCatchBatch.action.computeWeights.tip"; + mnemonic: E; _tuttiAction: {ComputeWeightsAction.class}; + _help: {"tuttihelp.editCatchBatch.action.computeWeights.help"}; } 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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -110,8 +110,8 @@ @Override public void onCloseUI() { - if (log.isInfoEnabled()) { - log.info("closing: " + ui); + if (log.isDebugEnabled()) { + log.debug("closing: " + ui); } ui.getCatchesCaracteristicsAttachmentsButton().onCloseUI(); // close batches tabs, then general tab Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/ImportPupitriAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/ImportPupitriAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/ImportPupitriAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -26,8 +26,6 @@ import fr.ifremer.tutti.ui.swing.util.action.AbstractTuttiAction; -import static org.nuiton.i18n.I18n._; - /** * @author tchemit <chemit@codelutin.com> * @since 1.0 @@ -35,11 +33,7 @@ public class ImportPupitriAction extends AbstractTuttiAction<EditCatchesUIModel, EditCatchesUI, EditCatchesUIHandler> { public ImportPupitriAction(EditCatchesUIHandler handler) { - super(handler, - "pupitri-import", - _("tutti.action.importPupitri"), - _("tutti.action.importPupitri.tip"), - true); + super(handler, false); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/SaveCatchBatchAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/SaveCatchBatchAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/SaveCatchBatchAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -31,8 +31,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import static org.nuiton.i18n.I18n._; - /** * To save a {@link CatchBatch}. * @@ -53,12 +51,7 @@ protected boolean updateUI; public SaveCatchBatchAction(EditCatchesUIHandler handler) { - super(handler, - "save", - _("tutti.action.saveCatchBatch"), - _("tutti.action.saveCatchBatch.tip"), - true - ); + super(handler, true); } public void setUpdateUI(boolean updateUI) { Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -29,6 +29,10 @@ showReset: true; } +#editAccidentalBatchTopPanel { + _help: {"tuttihelp.editAccidentalBatch.help"}; +} + #table { selectionMode: {ListSelectionModel.SINGLE_SELECTION}; selectionBackground: {null}; Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.jaxx 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.jaxx 2013-03-11 10:01:36 UTC (rev 572) @@ -21,12 +21,14 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> -<JPanel id='homePanel' layout='{new BorderLayout()}' +<JPanel id='editAccidentalBatchTopPanel' layout='{new BorderLayout()}' + decorator='help' implements='fr.ifremer.tutti.ui.swing.util.TuttiUI<AccidentalBatchUIModel, AccidentalBatchUIHandler>'> <import> + fr.ifremer.tutti.ui.swing.TuttiHelpBroker + fr.ifremer.tutti.ui.swing.TuttiUIContext fr.ifremer.tutti.ui.swing.util.TuttiUI - fr.ifremer.tutti.ui.swing.TuttiUIContext fr.ifremer.tutti.ui.swing.util.editor.LongTextEditorUI @@ -59,6 +61,9 @@ <AccidentalBatchUIModel id='model' initializer='getContextValue(AccidentalBatchUIModel.class)'/> + <TuttiHelpBroker id='broker' + constructorParams='"tuttihelp.editAccidentalBatch.help"'/> + <LongTextEditorUI id='longTextEditor'/> <JScrollPane id='tableScrollPane' constraints='BorderLayout.CENTER'> Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -266,8 +266,8 @@ @Override public void onCloseUI() { - if (log.isInfoEnabled()) { - log.info("closing: " + ui); + if (log.isDebugEnabled()) { + log.debug("closing: " + ui); } } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchTableModel.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchTableModel.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchTableModel.java 2013-03-11 10:01:36 UTC (rev 572) @@ -24,7 +24,6 @@ * #L% */ -import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchRowModel; import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableModel; import fr.ifremer.tutti.ui.swing.util.table.ColumnIdentifier; import org.jdesktop.swingx.table.TableColumnModelExt; Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -29,6 +29,10 @@ showReset: true; } +#benthosBatchTopPanel { + _help: {"tuttihelp.editBenthosBatch.help"}; +} + #benthosTotalWeightLabel { text: "tutti.label.catches.benthosTotalWeight"; labelFor: {benthosTotalWeightField}; Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.jaxx 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.jaxx 2013-03-11 10:01:36 UTC (rev 572) @@ -21,20 +21,18 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> -<JPanel id='homePanel' layout='{new BorderLayout()}' +<JPanel id='benthosBatchTopPanel' layout='{new BorderLayout()}' decorator='help' implements='fr.ifremer.tutti.ui.swing.util.TuttiUI<BenthosBatchUIModel, BenthosBatchUIHandler>'> <import> + fr.ifremer.tutti.ui.swing.TuttiUIContext + fr.ifremer.tutti.ui.swing.TuttiHelpBroker fr.ifremer.tutti.ui.swing.util.TuttiUI - fr.ifremer.tutti.ui.swing.TuttiUIContext fr.ifremer.tutti.ui.swing.util.editor.LongTextEditorUI jaxx.runtime.swing.editor.NumberEditor - jaxx.runtime.validator.swing.SwingValidatorUtil - jaxx.runtime.validator.swing.SwingValidatorMessageTableModel - org.jdesktop.swingx.JXTable javax.swing.ListSelectionModel @@ -63,9 +61,7 @@ <BenthosBatchUIModel id='model' initializer='getContextValue(BenthosBatchUIModel.class)'/> - <SwingValidatorMessageTableModel id='errorTableModel'/> - - <BeanValidator id='validator' bean='model' errorTableModel='errorTableModel' + <BeanValidator id='validator' bean='model' uiClass='jaxx.runtime.validator.swing.ui.ImageValidationUI'> <field name='benthosTotalWeight' component='benthosTotalWeightField'/> <field name='benthosTotalSortedWeight' @@ -76,6 +72,9 @@ component='benthosTotalUnsortedWeightField'/> </BeanValidator> + <TuttiHelpBroker id='broker' + constructorParams='"tuttihelp.editBenthosBatch.help"'/> + <LongTextEditorUI id='longTextEditor'/> <!--<AttachmentEditorUI id='attachmentEditor'/>--> @@ -120,7 +119,8 @@ <row> <cell columns="4"> <JPanel id='tableToolbar' layout='{new BorderLayout()}'> - <JPanel layout='{new GridLayout(1,0)}' constraints='BorderLayout.WEST'> + <JPanel layout='{new GridLayout(1,0)}' + constraints='BorderLayout.WEST'> <!--<JButton id='createSpeciesBatchButton' onActionPerformed='handler.createSpeciesBatch()'/>--> <JButton id='attachmentsButton'/> </JPanel> Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -289,8 +289,8 @@ @Override public void onCloseUI() { - if (log.isInfoEnabled()) { - log.info("closing: " + ui); + if (log.isDebugEnabled()) { + log.debug("closing: " + ui); } } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/macrowaste/MacroWasteBatchUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/macrowaste/MacroWasteBatchUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/macrowaste/MacroWasteBatchUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -29,6 +29,10 @@ showReset: true; } +#editMacroWasteBatchTopPanel { + _help: {"tuttihelp.editMacroWasteBatch.help"}; +} + #macroWasteTotalWeightLabel { text: "tutti.label.catches.macroWasteTotalWeight"; labelFor: {macroWasteTotalWeightField}; Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/macrowaste/MacroWasteBatchUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/macrowaste/MacroWasteBatchUI.jaxx 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/macrowaste/MacroWasteBatchUI.jaxx 2013-03-11 10:01:36 UTC (rev 572) @@ -21,20 +21,19 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> -<JPanel id='homePanel' layout='{new BorderLayout()}' +<JPanel id='editMacroWasteBatchTopPanel' layout='{new BorderLayout()}' + decorator='help' implements='fr.ifremer.tutti.ui.swing.util.TuttiUI<MacroWasteBatchUIModel, MacroWasteBatchUIHandler>'> <import> + fr.ifremer.tutti.ui.swing.TuttiHelpBroker + fr.ifremer.tutti.ui.swing.TuttiUIContext fr.ifremer.tutti.ui.swing.util.TuttiUI - fr.ifremer.tutti.ui.swing.TuttiUIContext fr.ifremer.tutti.ui.swing.util.editor.LongTextEditorUI jaxx.runtime.swing.editor.NumberEditor - jaxx.runtime.validator.swing.SwingValidatorUtil - jaxx.runtime.validator.swing.SwingValidatorMessageTableModel - org.jdesktop.swingx.JXTable javax.swing.ListSelectionModel @@ -62,13 +61,14 @@ <MacroWasteBatchUIModel id='model' initializer='getContextValue(MacroWasteBatchUIModel.class)'/> - <SwingValidatorMessageTableModel id='errorTableModel'/> - - <BeanValidator id='validator' bean='model' errorTableModel='errorTableModel' + <BeanValidator id='validator' bean='model' uiClass='jaxx.runtime.validator.swing.ui.ImageValidationUI'> <field name='macroWasteTotalWeight' component='macroWasteTotalWeightField'/> </BeanValidator> + <TuttiHelpBroker id='broker' + constructorParams='"tuttihelp.editMacroWasteBatch.help"'/> + <LongTextEditorUI id='longTextEditor'/> <Table id='form' fill='both' constraints='BorderLayout.NORTH'> Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/macrowaste/MacroWasteBatchUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/macrowaste/MacroWasteBatchUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/macrowaste/MacroWasteBatchUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -273,8 +273,8 @@ @Override public void onCloseUI() { - if (log.isInfoEnabled()) { - log.info("closing: " + ui); + if (log.isDebugEnabled()) { + log.debug("closing: " + ui); } } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/plankton/PlanktonBatchUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/plankton/PlanktonBatchUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/plankton/PlanktonBatchUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -29,6 +29,9 @@ showReset: true; } +#editPlanktonBatchTopPanel { + _help: {"tuttihelp.editPlanktonBatch.help"}; +} #planktonTotalWeightLabel { text: "tutti.label.catches.planktonTotalWeight"; labelFor: {planktonTotalWeightField}; Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/plankton/PlanktonBatchUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/plankton/PlanktonBatchUI.jaxx 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/plankton/PlanktonBatchUI.jaxx 2013-03-11 10:01:36 UTC (rev 572) @@ -21,19 +21,18 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> -<JPanel id='homePanel' layout='{new BorderLayout()}' +<JPanel id='editPlanktonBatchTopPanel' layout='{new BorderLayout()}' + decorator='help' implements='fr.ifremer.tutti.ui.swing.util.TuttiUI<PlanktonBatchUIModel, PlanktonBatchUIHandler>'> <import> + fr.ifremer.tutti.ui.swing.TuttiHelpBroker + fr.ifremer.tutti.ui.swing.TuttiUIContext fr.ifremer.tutti.ui.swing.util.TuttiUI - fr.ifremer.tutti.ui.swing.TuttiUIContext fr.ifremer.tutti.ui.swing.util.editor.LongTextEditorUI jaxx.runtime.swing.editor.NumberEditor - jaxx.runtime.validator.swing.SwingValidatorUtil - jaxx.runtime.validator.swing.SwingValidatorMessageTableModel - org.jdesktop.swingx.JXTable javax.swing.ListSelectionModel @@ -61,15 +60,16 @@ <PlanktonBatchUIModel id='model' initializer='getContextValue(PlanktonBatchUIModel.class)'/> - <SwingValidatorMessageTableModel id='errorTableModel'/> - - <BeanValidator id='validator' bean='model' errorTableModel='errorTableModel' + <BeanValidator id='validator' bean='model' uiClass='jaxx.runtime.validator.swing.ui.ImageValidationUI'> <field name='planktonTotalWeight' component='planktonTotalWeightField'/> <field name='planktonTotalSampleWeight' component='planktonTotalSampleWeightField'/> </BeanValidator> + <TuttiHelpBroker id='broker' + constructorParams='"tuttihelp.editPlanktonBatch.help"'/> + <LongTextEditorUI id='longTextEditor'/> <Table id='form' fill='both' constraints='BorderLayout.NORTH'> Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/plankton/PlanktonBatchUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/plankton/PlanktonBatchUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/plankton/PlanktonBatchUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -276,8 +276,8 @@ @Override public void onCloseUI() { - if (log.isInfoEnabled()) { - log.info("closing: " + ui); + if (log.isDebugEnabled()) { + log.debug("closing: " + ui); } } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/CreateMelagAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/CreateMelagAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/CreateMelagAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -43,8 +43,6 @@ */ public class CreateMelagAction extends AbstractTuttiAction<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { - private static final long serialVersionUID = 1L; - protected Map<SpeciesBatchRowModel, Float> selectedRows = Maps.newHashMap(); protected Float melagWeight = null; @@ -54,12 +52,7 @@ protected Float sortedWeight = null; public CreateMelagAction(SpeciesBatchUIHandler handler) { - super(handler, - "batch-rename", - _("tutti.action.createMelag"), - _("tutti.action.createMelag.tip"), - false - ); + super(handler, false); } @Override @@ -175,9 +168,16 @@ protected void releaseAction() { super.releaseAction(); //FIXME-TC No release action is not design to refresh ui... - getHandler().getTable().repaint(); +// getHandler().getTable().repaint(); selectedRows.clear(); melagWeight = null; sortedWeight = null; } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); + getHandler().getTable().repaint(); + + } } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/RemoveSpeciesBatchAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/RemoveSpeciesBatchAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/RemoveSpeciesBatchAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -36,8 +36,6 @@ import java.util.Set; -import static org.nuiton.i18n.I18n._; - /** * To remove a species batch and all his children. * @@ -53,12 +51,7 @@ protected RemoveSpeciesSubBatchAction removeSpeciesSubBatchAction; public RemoveSpeciesBatchAction(SpeciesBatchUIHandler handler) { - super(handler, - "batch-delete", - _("tutti.action.removeSpeciesBatch"), - _("tutti.action.removeSpeciesBatch.tip"), - false - ); + super(handler, false); removeSpeciesSubBatchAction = new RemoveSpeciesSubBatchAction(handler); } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/RemoveSpeciesSubBatchAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/RemoveSpeciesSubBatchAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/RemoveSpeciesSubBatchAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -30,14 +30,10 @@ import fr.ifremer.tutti.persistence.entities.TuttiEntities; import fr.ifremer.tutti.ui.swing.util.action.AbstractTuttiAction; import fr.ifremer.tutti.ui.swing.util.table.AbstractSelectTableAction; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.jdesktop.swingx.JXTable; import java.util.Set; -import static org.nuiton.i18n.I18n._; - /** * To remove a species batch children. * @@ -46,17 +42,8 @@ */ public class RemoveSpeciesSubBatchAction extends AbstractTuttiAction<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { - /** Logger. */ - private static final Log log = - LogFactory.getLog(RemoveSpeciesSubBatchAction.class); - public RemoveSpeciesSubBatchAction(SpeciesBatchUIHandler handler) { - super(handler, - "batch-delete", - _("tutti.action.removeSpeciesSubBatch"), - _("tutti.action.removeSpeciesSubBatch.tip"), - false - ); + super(handler, false); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/RenameSpeciesBatchAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/RenameSpeciesBatchAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/RenameSpeciesBatchAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -28,8 +28,6 @@ import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.service.PersistenceService; import fr.ifremer.tutti.ui.swing.util.action.AbstractTuttiAction; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.jdesktop.swingx.JXTable; import java.util.Collection; @@ -45,18 +43,10 @@ */ public class RenameSpeciesBatchAction extends AbstractTuttiAction<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { - /** Logger. */ - private static final Log log = LogFactory.getLog(RenameSpeciesBatchAction.class); - protected Species selectedSpecies; public RenameSpeciesBatchAction(SpeciesBatchUIHandler handler) { - super(handler, - "batch-rename", - _("tutti.action.renameSpeciesBatch"), - _("tutti.action.renameSpeciesBatch.tip"), - false - ); + super(handler, false); } @@ -64,8 +54,6 @@ protected boolean prepareAction() throws Exception { boolean result = super.prepareAction(); - SpeciesBatchUIHandler handler = getHandler(); - SpeciesBatchTableModel tableModel = handler.getTableModel(); JXTable table = handler.getTable(); SpeciesBatchRowModel row = tableModel.getEntry(table.getSelectedRow()); Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SampleCategoryComponent.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SampleCategoryComponent.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SampleCategoryComponent.java 2013-03-11 10:01:36 UTC (rev 572) @@ -53,9 +53,9 @@ public class SampleCategoryComponent { public static <C extends Serializable> TableCellRenderer newRender( - TableCellRenderer renderer, - Decorator<C> decorator, - Color computedDataColor) { + TableCellRenderer renderer, + Decorator<C> decorator, + Color computedDataColor) { return new SampleCategoryRenderer<C>(renderer, decorator, computedDataColor); } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SelectSpeciesUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SelectSpeciesUI.jaxx 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SelectSpeciesUI.jaxx 2013-03-11 10:01:36 UTC (rev 572) @@ -53,9 +53,9 @@ <JPanel layout='{new GridLayout(1, 0)}' constraints='BorderLayout.SOUTH'> <JButton id='cancelButton' - onActionPerformed='model.setSelectedSpecies(null); handler.closeDialog(this)'/> + onActionPerformed='handler.cancel()'/> <JButton id='validateButton' - onActionPerformed='handler.closeDialog(this)'/> + onActionPerformed='handler.validate()'/> </JPanel> </JPanel> \ No newline at end of file Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SelectSpeciesUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SelectSpeciesUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SelectSpeciesUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -62,19 +62,20 @@ Lists.<Species>newArrayList(), null); - getModel().addPropertyChangeListener(SelectSpeciesUIModel.PROPERTY_SPECIES, - new PropertyChangeListener() { + getModel().addPropertyChangeListener( + SelectSpeciesUIModel.PROPERTY_SPECIES, + new PropertyChangeListener() { - public void propertyChange(PropertyChangeEvent evt) { - ui.getSpeciesCombo().getHandler().sortData(); - } - }); + public void propertyChange(PropertyChangeEvent evt) { + ui.getSpeciesCombo().getHandler().sortData(); + } + }); } @Override public void onCloseUI() { - if (log.isInfoEnabled()) { - log.info("Closing: " + ui); + if (log.isDebugEnabled()) { + log.debug("closing: " + ui); } } @@ -83,4 +84,12 @@ return null; } + public void validate() { + closeDialog(ui); + } + + public void cancel() { + getModel().setSelectedSpecies(null); + closeDialog(ui); + } } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -41,9 +41,10 @@ computedDataColor: {handler.getConfig().getColorComputedWeights()}; } -#speciesBatchTopPanel { +#editSpeciesBatchTopPanel { _help: {"tuttihelp.editSpeciesBatch.help"}; } + #speciesBatchTabToolBar { floatable: false; opaque: false; @@ -56,7 +57,9 @@ #speciesTotalWeightLabel { text: "tutti.label.catches.speciesTotalWeight"; + toolTipText: "tuttihelp.editSpeciesBatch.field.speciesTotalWeight.tip"; labelFor: {speciesTotalWeightField}; + _help: {"tuttihelp.editSpeciesBatch.field.speciesTotalWeight.help"}; } #speciesTotalWeightField { @@ -66,7 +69,9 @@ #speciesTotalSortedWeightLabel { text: "tutti.label.catches.speciesTotalSortedWeight"; + toolTipText: "tuttihelp.editSpeciesBatch.field.speciesTotalSortedWeight.tip"; labelFor: {speciesTotalSortedWeightField}; + _help: {"tuttihelp.editSpeciesBatch.field.speciesTotalSortedWeight.help"}; } #speciesTotalSortedWeightField { @@ -76,7 +81,9 @@ #speciesTotalSampleSortedWeightLabel { text: "tutti.label.catches.speciesTotalSampleSortedWeight"; + toolTipText: "tuttihelp.editSpeciesBatch.field.speciesTotalSampleSortedWeight.tip"; labelFor: {speciesTotalSampleSortedWeightField}; + _help: {"tuttihelp.editSpeciesBatch.field.speciesTotalSampleSortedWeight.help"}; } #speciesTotalSampleSortedWeightField { @@ -86,7 +93,9 @@ #speciesTotalUnsortedWeightLabel { text: "tutti.label.catches.speciesTotalUnsortedWeight"; + toolTipText: "tuttihelp.editSpeciesBatch.field.speciesTotalUnsortedWeight.tip"; labelFor: {speciesTotalUnsortedWeightField}; + _help: {"tuttihelp.editSpeciesBatch.field.speciesTotalUnsortedWeight.help"}; } #speciesTotalUnsortedWeightField { @@ -96,7 +105,9 @@ #speciesTotalInertWeightLabel { text: "tutti.label.catches.speciesTotalInertWeight"; + toolTipText: "tuttihelp.editSpeciesBatch.field.speciesTotalInertWeight.tip"; labelFor: {speciesTotalInertWeightField}; + _help: {"tuttihelp.editSpeciesBatch.field.speciesTotalInertWeight.help"}; } #speciesTotalInertWeightField { @@ -106,7 +117,9 @@ #speciesTotalLivingNotItemizedWeightLabel { text: "tutti.label.catches.speciesTotalLivingNotItemizedWeight"; + toolTipText: "tuttihelp.editSpeciesBatch.field.speciesTotalLivingNotItemizedWeight.tip"; labelFor: {speciesTotalLivingNotItemizedWeightField}; + _help: {"tuttihelp.editSpeciesBatch.field.speciesTotalLivingNotItemizedWeight.help"}; } #speciesTotalLivingNotItemizedWeightField { @@ -119,33 +132,52 @@ } #splitSpeciesBatchMenu { + actionIcon: batch-split; text: "tutti.action.splitSpeciesBatch"; - toolTipText: "tutti.action.splitSpeciesBatch.tip"; + toolTipText: "tuttihelp.editSpeciesBatch.action.splitSpeciesBatch.tip"; mnemonic: S; - actionIcon: batch-split; enabled: {model.isTableViewModeAll() && model.isSplitSpeciesBatchEnabled()}; + _help: {"tuttihelp.editSpeciesBatch.action.splitSpeciesBatch.help"}; } #removeSpeciesBatchMenu { + actionIcon: batch-delete; + text: "tutti.action.removeSpeciesBatch"; + toolTipText: "tuttihelp.editSpeciesBatch.action.removeSpeciesBatch.tip"; + mnemonic: R; _tuttiAction: {RemoveSpeciesBatchAction.class}; - mnemonic: R; enabled: {model.isTableViewModeAll() && model.isRemoveSpeciesBatchEnabled()}; + _help: {"tuttihelp.editSpeciesBatch.action.removeSpeciesBatch.help"}; } #removeSpeciesSubBatchMenu { + actionIcon: batch-delete; + text: "tutti.action.removeSpeciesSubBatch"; + toolTipText: "tuttihelp.editSpeciesBatch.action.removeSpeciesSubBatch.tip"; + mnemonic: R; _tuttiAction: {RemoveSpeciesSubBatchAction.class}; - mnemonic: R; enabled: {model.isTableViewModeAll() && model.isRemoveSpeciesSubBatchEnabled()}; + _help: {"tuttihelp.editSpeciesBatch.action.removeSpeciesSubBatch.help"}; } #renameSpeciesBatchMenu { + actionIcon: batch-rename; + text: "tutti.action.renameSpeciesBatch"; + toolTipText: "tuttihelp.editSpeciesBatch.renameSpeciesBatch.tip"; + mnemonic: C; _tuttiAction: {RenameSpeciesBatchAction.class}; enabled: {model.isTableViewModeAll() && model.isRenameSpeciesBatchEnabled()}; + _help: {"tuttihelp.editSpeciesBatch.action.renameSpeciesBatch.help"}; } #createMelag { + actionIcon: batch-rename; + text: "tutti.action.createMelag"; + toolTipText: "tuttihelp.editSpeciesBatch.action.createMelag.tip"; + mnemonic: M; _tuttiAction: {CreateMelagAction.class}; enabled: {!model.isTableViewModeLeaf() && model.isCreateMelagEnabled()}; + _help: {"tuttihelp.editSpeciesBatch.action.createMelag.help"}; } #table { @@ -157,9 +189,11 @@ #createSpeciesBatchButton { actionIcon: batch-create; + text: "tutti.action.createSpeciesBatch"; + toolTipText: "tuttihelp.editSpeciesBatch.createSpeciesBatch.tip"; mnemonic: C; - text: "tutti.action.createSpeciesBatch"; enabled: {model.isCreateSpeciesBatchEnabled()}; + _help: {"tuttihelp.editSpeciesBatch.action.createSpeciesBatch.help"}; } #filterTablePane { @@ -167,15 +201,16 @@ } #filterSpeciesBatchLabel { + actionIcon: filter; text: "tutti.label.filterSpeciesBatchMode.label"; - toolTipText: "tutti.label.filterSpeciesBatchMode.label.tip"; + toolTipText: "tuttihelp.editSpeciesBatch.filterSpeciesBatch.tip"; _strongStyle: true; - actionIcon: filter; + _help: {"tuttihelp.editSpeciesBatch.filterSpeciesBatch.help"}; } #filterSpeciesBatchAllButton { text: "tutti.label.filterSpeciesBatchMode.mode.all"; - toolTipText: "tutti.label.filterSpeciesBatchMode.mode.all.tip"; + toolTipText: "tuttihelp.editSpeciesBatch.filterSpeciesBatch.mode.all.tip"; value: "all"; selected: {model.isTableViewModeAll()}; buttonGroup: "filterSpeciesBatchMode"; @@ -183,7 +218,7 @@ #filterSpeciesBatchLeafButton { text: "tutti.label.filterSpeciesBatchMode.mode.leaf"; - toolTipText: "tutti.label.filterSpeciesBatchMode.mode.leaf.tip"; + toolTipText: "tuttihelp.editSpeciesBatch.filterSpeciesBatch.mode.leaf.tip"; value: "leaf"; selected: {model.isTableViewModeLeaf()}; buttonGroup: "filterSpeciesBatchMode"; @@ -191,7 +226,7 @@ #filterSpeciesBatchRootButton { text: {handler.getFilterSpeciesBatchRootButtonText(model.getRootNumber())}; - toolTipText: "tutti.label.filterSpeciesBatchMode.mode.root.tip"; + toolTipText: "tuttihelp.editSpeciesBatch.filterSpeciesBatch.mode.root.tip"; value: "root"; selected: {model.isTableViewModeRoot()}; buttonGroup: "filterSpeciesBatchMode"; Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.jaxx 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.jaxx 2013-03-11 10:01:36 UTC (rev 572) @@ -21,7 +21,8 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> -<JPanel id='speciesBatchTopPanel' layout='{new BorderLayout()}' decorator='help' +<JPanel id='editSpeciesBatchTopPanel' layout='{new BorderLayout()}' + decorator='help' implements='fr.ifremer.tutti.ui.swing.util.TuttiUI<SpeciesBatchUIModel, SpeciesBatchUIHandler>'> <import> @@ -135,8 +136,9 @@ <JLabel id='speciesTotalLivingNotItemizedWeightLabel'/> </cell> <cell> - <TuttiComputedOrNotDataEditor id='speciesTotalLivingNotItemizedWeightField' - constructorParams='this'/> + <TuttiComputedOrNotDataEditor + id='speciesTotalLivingNotItemizedWeightField' + constructorParams='this'/> </cell> </row> @@ -144,7 +146,8 @@ <row> <cell columns="4"> <JPanel id='tableToolbar' layout='{new BorderLayout()}'> - <JPanel layout='{new GridLayout(1,0)}' constraints='BorderLayout.WEST'> + <JPanel layout='{new GridLayout(1,0)}' + constraints='BorderLayout.WEST'> <JButton id='createSpeciesBatchButton' onActionPerformed='handler.createSpeciesBatch()'/> </JPanel> Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -240,8 +240,8 @@ SpeciesBatchRowModel rootRow = loadSpeciesBatch(aBatch, null, rows); - if (log.isInfoEnabled()) { - log.info("Loaded root batch " + + if (log.isDebugEnabled()) { + log.debug("Loaded root batch " + decorate(rootRow.getSpecies()) + " - " + decorate(rootRow.getSortedUnsortedCategoryValue())); } @@ -397,8 +397,8 @@ @Override public void beforeInitUI() { - if (log.isInfoEnabled()) { - log.info("beforeInit: " + ui); + if (log.isDebugEnabled()) { + log.debug("beforeInit: " + ui); } EditCatchesUIModel catchesUIModel = @@ -448,8 +448,8 @@ @Override public void afterInitUI() { - if (log.isInfoEnabled()) { - log.info("afterInit: " + ui); + if (log.isDebugEnabled()) { + log.debug("afterInit: " + ui); } initUI(ui); @@ -705,8 +705,8 @@ @Override public void onCloseUI() { - if (log.isInfoEnabled()) { - log.info("Closing: " + ui); + if (log.isDebugEnabled()) { + log.debug("Closing: " + ui); } ui.getSpeciesBatchAttachmentsButton().onCloseUI(); } @@ -1176,8 +1176,10 @@ Preconditions.checkNotNull(row); Preconditions.checkNotNull(row.getSpecies()); Preconditions.checkNotNull(row.getSortedUnsortedCategoryValue()); - if (log.isInfoEnabled()) { - log.info("Add to speciesUsed: " + decorate(row.getSortedUnsortedCategoryValue()) + " - " + decorate(row.getSpecies())); + if (log.isDebugEnabled()) { + log.debug("Add to speciesUsed: " + + decorate(row.getSortedUnsortedCategoryValue()) + + " - " + decorate(row.getSpecies())); } SpeciesBatchUIModel model = getModel(); model.getSpeciesUsed().put(row.getSortedUnsortedCategoryValue(), Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -33,6 +33,10 @@ showPopupButton: {handler.getConfig().isShowNumberEditorButton()}; } +#editSpeciesFrequenciesTopPanel { + _help: {"tuttihelp.editSpeciesFrequencies.help"}; +} + #stepLabel { text: "tutti.label.frequencyConfiguration.step"; labelFor: {stepField}; Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUI.jaxx 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUI.jaxx 2013-03-11 10:01:36 UTC (rev 572) @@ -21,24 +21,23 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> -<JPanel id='homePanel' layout='{new BorderLayout()}' +<JPanel id='editSpeciesFrequenciesTopPanel' layout='{new BorderLayout()}' + decorator='help' implements='fr.ifremer.tutti.ui.swing.util.TuttiUI<SpeciesFrequencyUIModel, SpeciesFrequencyUIHandler>'> <import> fr.ifremer.tutti.persistence.entities.referential.Caracteristic - fr.ifremer.tutti.ui.swing.util.TuttiUI + fr.ifremer.tutti.ui.swing.TuttiHelpBroker fr.ifremer.tutti.ui.swing.TuttiUIContext fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchRowModel + fr.ifremer.tutti.ui.swing.util.TuttiUI jaxx.runtime.swing.CardLayout2Ext jaxx.runtime.swing.editor.bean.BeanComboBox jaxx.runtime.swing.editor.NumberEditor - jaxx.runtime.validator.swing.SwingValidatorUtil - jaxx.runtime.validator.swing.SwingValidatorMessageTableModel - org.jdesktop.swingx.JXTable javax.swing.ListSelectionModel @@ -71,15 +70,16 @@ <SpeciesFrequencyUIModel id='model' initializer='getContextValue(SpeciesFrequencyUIModel.class)'/> - <SwingValidatorMessageTableModel id='errorTableModel'/> - - <BeanValidator id='validator' bean='model' errorTableModel='errorTableModel' + <BeanValidator id='validator' bean='model' uiClass='jaxx.runtime.validator.swing.ui.ImageValidationUI'> <field name='lengthStepCaracteristic' component='lengthStepCaracteristicComboBox'/> <field name='rows' component='tableScrollPane'/> </BeanValidator> + <TuttiHelpBroker id='broker' + constructorParams='"tuttihelp.editSpeciesFrequencies.help"'/> + <CardLayout2Ext id='modeConfigurationLayout' constructorParams='this, "modeConfigurationPanel"'/> Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -283,8 +283,8 @@ @Override public void onCloseUI() { - if (log.isInfoEnabled()) { - log.info("closing: " + ui); + if (log.isDebugEnabled()) { + log.debug("closing: " + ui); } frequencyEditor = null; Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/AddSpeciesAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/AddSpeciesAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/AddSpeciesAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -26,12 +26,9 @@ */ import com.google.common.collect.Lists; -import fr.ifremer.tutti.persistence.TuttiPersistence; import fr.ifremer.tutti.persistence.entities.TuttiEntities; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.ui.swing.util.action.AbstractTuttiAction; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import java.util.List; import java.util.Map; @@ -46,9 +43,6 @@ */ public class AddSpeciesAction extends AbstractTuttiAction<CreateSpeciesBatchUIModel, CreateSpeciesBatchUI, CreateSpeciesBatchUIHandler> { - /** Logger. */ - private static final Log log = LogFactory.getLog(AddSpeciesAction.class); - protected List<Species> allSpecies; protected List<Species> referentSpecies; @@ -56,46 +50,52 @@ protected Species selectedSpecies; public AddSpeciesAction(CreateSpeciesBatchUIHandler handler) { - super(handler, - null, - _("tutti.action.addSpecies.text"), - _("tutti.action.addSpecies.tip"), - false - ); + super(handler, false); - TuttiPersistence persistenceService = - getContext().getPersistenceService(); - allSpecies = persistenceService.getAllSpecies(); - referentSpecies = persistenceService.getAllReferentSpecies(); + allSpecies = getDataContext().getSpecies(); + referentSpecies = getDataContext().getReferentSpecies(); } @Override + protected boolean prepareAction() throws Exception { + boolean canContinue = super.prepareAction(); + if (canContinue) { + + CreateSpeciesBatchUIModel model = getModel(); + + List<Species> species = Lists.newArrayList(allSpecies); + species.removeAll(model.getAvailableSpecies()); + + selectedSpecies = getHandler().openAddSpeciesDialog( + _("tutti.title.selectSpecies"), species); + canContinue = selectedSpecies != null; + } + return canContinue; + } + + @Override protected void doAction() throws Exception { + CreateSpeciesBatchUIModel model = getModel(); List<Species> availableSpecies = Lists.newArrayList(model.getAvailableSpecies()); - final List<Species> species = Lists.newArrayList(allSpecies); - species.removeAll(availableSpecies); - selectedSpecies = getHandler().openAddSpeciesDialog(_("tutti.title.selectSpecies"), species); + if (!selectedSpecies.isReferenceTaxon()) { + String decoratedSynonym = decorate(selectedSpecies); + List<Species> referents = referentSpecies; + Map<String, Species> referentsById = TuttiEntities.splitByTaxonId(referents); + String taxonId = String.valueOf(selectedSpecies.getReferenceTaxonId()); + selectedSpecies = referentsById.get(taxonId); + String decoratedReferent = decorate(selectedSpecies); + sendMessage(_("tutti.flash.information.species.replaced", decoratedSynonym, decoratedReferent)); + } - if (selectedSpecies != null) { - if (!selectedSpecies.isReferenceTaxon()) { - String decoratedSynonym = decorate(selectedSpecies); - List<Species> referents = referentSpecies; - Map<String, Species> referentsById = TuttiEntities.splitByTaxonId(referents); - String taxonId = String.valueOf(selectedSpecies.getReferenceTaxonId()); - selectedSpecies = referentsById.get(taxonId); - String decoratedReferent = decorate(selectedSpecies); - sendMessage(_("tutti.flash.information.species.replaced", decoratedSynonym, decoratedReferent)); - } + if (!availableSpecies.contains(selectedSpecies)) { + availableSpecies.add(selectedSpecies); + } + model.setAvailableSpecies(availableSpecies); + model.setSpecies(selectedSpecies); - if (!availableSpecies.contains(selectedSpecies)) { - availableSpecies.add(selectedSpecies); - } - model.setAvailableSpecies(availableSpecies); - model.setSpecies(selectedSpecies); - } } } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/CreateSpeciesBatchUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/CreateSpeciesBatchUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/CreateSpeciesBatchUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -34,16 +34,15 @@ showReset: true; } -#splitPane { - orientation: {JSplitPane.VERTICAL_SPLIT}; - resizeWeight: 0.2; - oneTouchExpandable: true; - continuousLayout: true; +#createSpeciesBatchTopPanel { + _help: {"tuttihelp.createSpeciesBatch.help"}; } #speciesLabel { text: "tutti.label.createSpeciesBatch.species"; + toolTipText: "tuttihelp.createSpeciesBatch.field.speciesComboBox.tip"; labelFor: {speciesComboBox}; + _help: {"tuttihelp.createSpeciesBatch.field.speciesComboBox.help"}; } #speciesComboBox { @@ -53,12 +52,18 @@ } #addSpeciesButton { + text: "tutti.action.addSpecies"; + toolTipText: "tuttihelp.createSpeciesBatch.action.addSpecies.tip"; + mnemonic: A; _tuttiAction: {AddSpeciesAction.class}; + _help: {"tuttihelp.createSpeciesBatch.action.addSpecies.help"}; } #sortedUnsortedCategoryLabel { text: "tutti.label.createSpeciesBatch.sortedUnsortedCategory"; + toolTipText: "tuttihelp.createSpeciesBatch.field.sortedUnsortedCategoryComboBox.tip"; labelFor: {sortedUnsortedCategoryComboBox}; + _help: {"tuttihelp.createSpeciesBatch.field.sortedUnsortedCategoryComboBox.help"}; } #sortedUnsortedCategoryComboBox { @@ -68,7 +73,9 @@ #batchWeightLabel { text: "tutti.label.createSpeciesBatch.batchWeight"; + toolTipText: "tuttihelp.createSpeciesBatch.field.batchWeightField.tip"; labelFor: {batchWeightField}; + _help: {"tuttihelp.createSpeciesBatch.field.batchWeightField.help"}; } #batchWeightField { @@ -81,13 +88,15 @@ #saveButton { actionIcon: save; + text: "tutti.action.save"; + toolTipText: "tuttihelp.createSpeciesBatch.action.save.tip"; mnemonic: E; - text: "tutti.action.save"; enabled: {model.isValid()}; } #cancelButton { actionIcon: cancel; + text: "tutti.action.cancel"; + toolTipText: "tuttihelp.createSpeciesBatch.action.cancel.tip"; mnemonic: A; - text: "tutti.action.cancel"; } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/CreateSpeciesBatchUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/CreateSpeciesBatchUI.jaxx 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/CreateSpeciesBatchUI.jaxx 2013-03-11 10:01:36 UTC (rev 572) @@ -21,27 +21,27 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> -<JPanel id='homePanel' layout='{new BorderLayout()}' +<JPanel id='createSpeciesBatchTopPanel' layout='{new BorderLayout()}' + decorator='help' implements='fr.ifremer.tutti.ui.swing.util.TuttiUI<CreateSpeciesBatchUIModel, CreateSpeciesBatchUIHandler>'> <import> fr.ifremer.tutti.persistence.entities.referential.Species fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue + fr.ifremer.tutti.ui.swing.TuttiHelpBroker + fr.ifremer.tutti.ui.swing.TuttiUIContext + fr.ifremer.tutti.ui.swing.content.operation.catches.species.SampleCategoryType fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI fr.ifremer.tutti.ui.swing.util.TuttiUI - fr.ifremer.tutti.ui.swing.TuttiUIContext org.jdesktop.swingx.JXTable jaxx.runtime.swing.editor.bean.BeanComboBox jaxx.runtime.swing.editor.NumberEditor - jaxx.runtime.validator.swing.SwingValidatorUtil - jaxx.runtime.validator.swing.SwingValidatorMessageTableModel - javax.swing.ListSelectionModel java.awt.Color @@ -68,9 +68,7 @@ <CreateSpeciesBatchUIModel id='model' initializer='getContextValue(CreateSpeciesBatchUIModel.class)'/> - <SwingValidatorMessageTableModel id='errorTableModel'/> - - <BeanValidator id='validator' bean='model' errorTableModel='errorTableModel' + <BeanValidator id='validator' bean='model' uiClass='jaxx.runtime.validator.swing.ui.ImageValidationUI'> <field name='species' component='speciesComboBox'/> <field name='sortedUnsortedCategory' @@ -78,6 +76,9 @@ <field name='batchWeight' component='batchWeightField'/> </BeanValidator> + <TuttiHelpBroker id='broker' + constructorParams='"tuttihelp.createSpeciesBatch.help"'/> + <Table id='configurationPanel' constraints='BorderLayout.CENTER' fill='both'> <!-- Species --> Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/CreateSpeciesBatchUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/CreateSpeciesBatchUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/CreateSpeciesBatchUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -161,8 +161,8 @@ @Override public void onCloseUI() { - if (log.isInfoEnabled()) { - log.info("closing: " + ui); + if (log.isDebugEnabled()) { + log.debug("closing: " + ui); } // evict model from validator Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -28,11 +28,8 @@ bean: {model}; } -#splitPane { - orientation: {JSplitPane.VERTICAL_SPLIT}; - resizeWeight: 0.2; - oneTouchExpandable: true; - continuousLayout: true; +#splitSpeciesBatchTopPanel { + _help: {"tuttihelp.splitSpeciesBatch.help"}; } #configurationPanel { @@ -41,7 +38,9 @@ #categoryLabel { text: "tutti.label.sampleCategoryConfiguration.category"; + toolTipText: "tuttihelp.splitSpeciesBatch.field.categoryField.tip"; labelFor: {categoryComboBox}; + _help: {"tuttihelp.splitSpeciesBatch.field.categoryField.help"}; } #categoryComboBox { @@ -50,7 +49,9 @@ #speciesLabel { text: "tutti.label.sampleCategoryConfiguration.species"; + toolTipText: "tuttihelp.splitSpeciesBatch.field.speciesField.tip"; labelFor: {speciesField}; + _help: {"tuttihelp.splitSpeciesBatch.field.speciesField.help"}; } #speciesField { @@ -61,7 +62,9 @@ #batchWeightLabel { text: "tutti.label.sampleCategoryConfiguration.batchWeight"; + toolTipText: "tuttihelp.splitSpeciesBatch.field.batchWeightField.tip"; labelFor: {batchWeightField}; + _help: {"tuttihelp.splitSpeciesBatch.field.batchWeightField.help"}; } #batchWeightField { @@ -72,7 +75,9 @@ #sampleWeightLabel { text: "tutti.label.sampleCategoryConfiguration.sampleWeight"; + toolTipText: "tuttihelp.splitSpeciesBatch.field.sampleWeightField.tip"; labelFor: {sampleWeightField}; + _help: {"tuttihelp.splitSpeciesBatch.field.sampleWeightField.help"}; } #sampleWeightField { @@ -91,28 +96,17 @@ #cancelButton { actionIcon: cancel; - mnemonic: A; text: "tutti.action.cancel"; + toolTipText: "tuttihelp.splitSpeciesBatch.action.cancel.tip"; + mnemonic: A; + _help: {"tuttihelp.splitSpeciesBatch.action.cancel.help"}; } #saveButton { actionIcon: save; - mnemonic: E; text: "tutti.action.save"; + toolTipText: "tuttihelp.splitSpeciesBatch.action.save.tip"; + mnemonic: E; enabled: {model.isValid()}; + _help: {"tuttihelp.splitSpeciesBatch.action.save.help"}; } - -#messagePanel { - border: {BorderFactory.createTitledBorder(_("tutti.title.messages"))}; - /*height: 200; - width: 500;*/ -} - -#errorTable { - rowSelectionAllowed: true; - autoCreateRowSorter: true; - autoResizeMode: {JTable.AUTO_RESIZE_SUBSEQUENT_COLUMNS}; - cellSelectionEnabled: false; - selectionMode: {ListSelectionModel.SINGLE_SELECTION}; - model: {errorTableModel}; -} \ No newline at end of file Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.jaxx 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.jaxx 2013-03-11 10:01:36 UTC (rev 572) @@ -21,7 +21,8 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> -<JPanel id='homePanel' layout='{new BorderLayout()}' +<JPanel id='splitSpeciesBatchTopPanel' layout='{new BorderLayout()}' + decorator='help' implements='fr.ifremer.tutti.ui.swing.util.TuttiUI<SplitSpeciesBatchUIModel, SplitSpeciesBatchUIHandler>'> <import> @@ -29,8 +30,9 @@ fr.ifremer.tutti.ui.swing.content.operation.catches.species.SampleCategoryType fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI + fr.ifremer.tutti.ui.swing.TuttiHelpBroker + fr.ifremer.tutti.ui.swing.TuttiUIContext fr.ifremer.tutti.ui.swing.util.TuttiUI - fr.ifremer.tutti.ui.swing.TuttiUIContext org.jdesktop.swingx.JXTable @@ -64,14 +66,15 @@ <SplitSpeciesBatchUIModel id='model' initializer='getContextValue(SplitSpeciesBatchUIModel.class)'/> - <SwingValidatorMessageTableModel id='errorTableModel'/> - - <BeanValidator id='validator' bean='model' errorTableModel='errorTableModel' + <BeanValidator id='validator' bean='model' uiClass='jaxx.runtime.validator.swing.ui.ImageValidationUI'> <field name='selectedCategory' component='categoryComboBox'/> <field name='sampleWeight' component='sampleWeightField'/> </BeanValidator> + <TuttiHelpBroker id='broker' + constructorParams='"tuttihelp.splitSpeciesBatch.help"'/> + <Table id='configurationPanel' fill='both' constraints='BorderLayout.NORTH'> Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -207,8 +207,8 @@ @Override public void onCloseUI() { - if (log.isInfoEnabled()) { - log.info("closing: " + ui); + if (log.isDebugEnabled()) { + log.debug("closing: " + ui); } // evict model from validator Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/AbstractCaracteristicTabUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/AbstractCaracteristicTabUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/AbstractCaracteristicTabUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -134,8 +134,8 @@ @Override public void onCloseUI() { - if (log.isInfoEnabled()) { - log.info("closing: " + getUI()); + if (log.isDebugEnabled()) { + log.debug("closing: " + getUI()); } } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/CancelEditProgramAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/CancelEditProgramAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/CancelEditProgramAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -28,8 +28,6 @@ import fr.ifremer.tutti.ui.swing.content.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; -import static org.nuiton.i18n.I18n._; - /** * Cancels the edition of a program * @@ -39,13 +37,7 @@ public class CancelEditProgramAction extends AbstractChangeScreenAction { public CancelEditProgramAction(MainUIHandler handler) { - super(handler, - "cancel", - _("tutti.action.cancel.editProgram"), - _("tutti.action.cancel.editProgram.tip"), - true, - TuttiScreen.SELECT_CRUISE - ); + super(handler, true, TuttiScreen.SELECT_CRUISE); setSkipCheckCurrentScreen(true); } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -73,12 +73,20 @@ } #saveButton { + actionIcon: save; + text: "tutti.action.saveProgram"; + toolTipText: "tuttihelp.editProgram.action.saveProgram.tip"; + mnemonic: E; _tuttiAction: {SaveProgramAction.class}; enabled: {model.isModify() && model.isValid()}; - _help: {"tuttihelp.editProgram.action.save.help"}; + _help: {"tuttihelp.editProgram.action.saveProgram.help"}; } #cancelButton { + actionIcon: cancel; + text: "tutti.action.cancelEditProgram"; + toolTipText: "tuttihelp.editProgram.action.cancelEditProgram.tip"; + mnemonic: A; _tuttiAction: {CancelEditProgramAction.class}; - _help: {"tuttihelp.editProgram.action.cancel.help"}; + _help: {"tuttihelp.editProgram.action.cancelProgram.help"}; } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -128,8 +128,8 @@ @Override public void onCloseUI() { - if (log.isInfoEnabled()) { - log.info("closing: " + ui); + if (log.isDebugEnabled()) { + log.debug("closing: " + ui); } clearValidators(); } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/SaveProgramAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/SaveProgramAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/SaveProgramAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -29,7 +29,6 @@ import fr.ifremer.tutti.persistence.entities.data.Program; import fr.ifremer.tutti.service.PersistenceService; import fr.ifremer.tutti.ui.swing.TuttiUIContext; -import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUIHandler; import fr.ifremer.tutti.ui.swing.util.action.AbstractTuttiAction; import static org.nuiton.i18n.I18n._; @@ -42,12 +41,7 @@ public class SaveProgramAction extends AbstractTuttiAction<EditProgramUIModel, EditProgramUI, EditProgramUIHandler> { public SaveProgramAction(EditProgramUIHandler handler) { - super(handler, - "save", - _("tutti.action.saveProgram"), - _("tutti.action.saveProgram.tip"), - true - ); + super(handler, true); } @Override @@ -77,9 +71,7 @@ } @Override - public void postAction(Throwable error) { - super.postAction(error); - + public void postSuccessAction() { getContext().getMainUI().getHandler().setBodyTitle( EditProgramUIHandler.getTitle(true)); } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/AddSpeciesProtocolAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/AddSpeciesProtocolAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/AddSpeciesProtocolAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -42,12 +42,7 @@ public class AddSpeciesProtocolAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { public AddSpeciesProtocolAction(EditProtocolUIHandler handler) { - super(handler, - "add", - null, - _("tutti.action.addSpeciesProtocol.tip"), - false - ); + super(handler, false); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/CancelEditProtocolAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/CancelEditProtocolAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/CancelEditProtocolAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -28,8 +28,6 @@ import fr.ifremer.tutti.ui.swing.content.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; -import static org.nuiton.i18n.I18n._; - /** * Cancels the edition of a protocol * @@ -39,12 +37,7 @@ public class CancelEditProtocolAction extends AbstractChangeScreenAction { public CancelEditProtocolAction(MainUIHandler handler) { - super(handler, - "cancel", - _("tutti.action.cancel.editProtocol"), - _("tutti.action.cancel.editProtocol.tip"), - true, - TuttiScreen.SELECT_CRUISE); + super(handler, true, TuttiScreen.SELECT_CRUISE); setSkipCheckCurrentScreen(true); } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -74,14 +74,22 @@ } #saveButton { + actionIcon: save; + text: "tutti.action.saveProtocol"; + toolTipText: "tuttihelp.editProtocol.action.saveProtocol.tip"; + mnemonic: E; enabled: {model.isModify() && model.isValid()}; _tuttiAction: {SaveProtocolAction.class}; - _help: {"tuttihelp.editProtocol.action.save.help"}; + _help: {"tuttihelp.editProtocol.action.saveProtocol.help"}; } #cancelButton { + actionIcon: cancel; + text: "tutti.action.cancelEditProtocol"; + toolTipText: "tuttihelp.editProtocol.action.cancelEditProtocol.tip"; + mnemonic: A; _tuttiAction: {CancelEditProtocolAction.class}; - _help: {"tuttihelp.editProtocol.action.cancel.help"}; + _help: {"tuttihelp.editProtocol.action.cancelEditProtocol.help"}; } #speciesComboBox { @@ -91,12 +99,18 @@ _help: {"tuttihelp.editProtocol.field.species.help"}; } -#selectOtherSpecies { +#selectOtherSpeciesButton { + text: "tutti.action.selectOtherSpecies"; + toolTipText: "tuttihelp.editProtocol.action.selectOtherSpecies.tip"; + mnemonic: S; _tuttiAction: {SelectOtherSpeciesAction.class}; _help: {"tuttihelp.editProtocol.action.selectOtherSpecies.help"}; } -#addSpeciesProtocol { +#addSpeciesProtocolButton { + actionIcon: add; + toolTipText: "tuttihelp.editProtocol.action.addSpeciesProtocol.tip"; + mnemonic: A; _tuttiAction: {AddSpeciesProtocolAction.class}; enabled: {speciesComboBox.getSelectedItem() != null}; _help: {"tuttihelp.editProtocol.action.addSpeciesProtocol.help"}; @@ -106,10 +120,13 @@ label: "tutti.title.batchActions"; } -#removeSpeciesProtocol { +#removeSpeciesProtocolButton { + actionIcon: batch-delete; + text: "tutti.action.removeSpeciesProtocol"; + toolTipText: "tuttihelp.editProtocol.action.removeSpeciesProtocol.tip"; + mnemonic: R; _tuttiAction: {RemoveSpeciesProtocolAction.class}; enabled: {model.isRemoveSpeciesEnabled()}; - mnemonic: R; _help: {"tuttihelp.editProtocol.action.removeSpeciesProtocol.help"}; } @@ -126,29 +143,49 @@ _help: {"tuttihelp.editProtocol.pane.caracteristic.help"}; } -#importSpecies { +#importSpeciesButton { + actionIcon: import; + text: "tutti.action.importProtocolSpecies"; + toolTipText: "tuttihelp.editProtocol.action.importProtocolSpecies.tip"; + mnemonic: I; _tuttiAction: {ImportProtocolSpeciesAction.class}; - _help: {"tuttihelp.editProtocol.action.importSpecies.help"}; + _help: {"tuttihelp.editProtocol.action.importProtocolSpecies.help"}; } -#exportSpecies { +#exportSpeciesButton { + actionIcon: export; + text: "tutti.action.exportProtocolSpecies"; + toolTipText: "tuttihelp.editProtocol.action.exportProtocolSpecies.tip"; + mnemonic: E; _tuttiAction: {ExportProtocolSpeciesAction.class}; - _help: {"tuttihelp.editProtocol.action.exportSpecies.help"}; + _help: {"tuttihelp.editProtocol.action.exportProtocolSpecies.help"}; } -#importCaracteristic { +#importCaracteristicButton { + actionIcon: import; + text: "tutti.action.importProtocolCaracteristic"; + toolTipText: "tuttihelp.editProtocol.action.importProtocolCaracteristic.tip"; + mnemonic: I; _tuttiAction: {ImportProtocolCaracteristicAction.class}; - _help: {"tuttihelp.editProtocol.action.importCaracteristic.help"}; + _help: {"tuttihelp.editProtocol.action.importProtocolCaracteristic.help"}; } -#exportCaracteristic { +#exportCaracteristicButton { + actionIcon: export; + text: "tutti.action.exportProtocolCaracteristic"; + toolTipText: "tuttihelp.editProtocol.action.exportProtocolCaracteristic.tip"; + mnemonic: E; _tuttiAction: {ExportProtocolCaracteristicAction.class}; - _help: {"tuttihelp.editProtocol.action.exportCaracteristic.help"}; + _help: {"tuttihelp.editProtocol.action.exportProtocolCaracteristic.tip"}; } -#exportAllCaracteristic { +#exportAllCaracteristicButton { + actionIcon: export; + text: "tutti.action.exportProtocolAllCaracteristic"; + toolTipText: "tuttihelp.editProtocol.action.exportProtocolAllCaracteristic.tip"; + mnemonic: E; _tuttiAction: {ExportAllCaracteristicAction.class}; - _help: {"tuttihelp.editProtocol.action.exportAllCaracteristic.help"}; + _help: {"tuttihelp.editProtocol.action.exportProtocolAllCaracteristic.help"}; } #gearUseFeatureList { Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.jaxx 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.jaxx 2013-03-11 10:01:36 UTC (rev 572) @@ -114,19 +114,21 @@ <JPanel id='caracteristicActions' layout="{new GridLayout()}" constraints='BorderLayout.NORTH'> - <JButton id='importCaracteristic'/> - <JButton id='exportCaracteristic'/> - <JButton id='exportAllCaracteristic'/> + <JButton id='importCaracteristicButton'/> + <JButton id='exportCaracteristicButton'/> + <JButton id='exportAllCaracteristicButton'/> </JPanel> <JTabbedPane id='caracteristicPane' constraints='BorderLayout.CENTER'> <tab title='tutti.label.tab.protocol.caracteristic.lengthClasses'> <BeanDoubleList id='lengthClassesList' genericType='Caracteristic'/> </tab> <tab title='tutti.label.tab.protocol.caracteristic.gearUseFeature'> - <BeanDoubleList id='gearUseFeatureList' genericType='Caracteristic'/> + <BeanDoubleList id='gearUseFeatureList' + genericType='Caracteristic'/> </tab> <tab title='tutti.label.tab.protocol.caracteristic.vesselUseFeature'> - <BeanDoubleList id='vesselUseFeatureList' genericType='Caracteristic'/> + <BeanDoubleList id='vesselUseFeatureList' + genericType='Caracteristic'/> </tab> </JTabbedPane> </JPanel> @@ -136,8 +138,8 @@ <JPanel id='speciesPanel' layout="{new BorderLayout()}"> <JPanel id='speciesActions' layout="{new GridLayout()}" constraints='BorderLayout.NORTH'> - <JButton id='importSpecies'/> - <JButton id='exportSpecies'/> + <JButton id='importSpeciesButton'/> + <JButton id='exportSpeciesButton'/> </JPanel> <Table fill='both' constraints='BorderLayout.CENTER'> @@ -148,10 +150,10 @@ genericType='Species'/> </cell> <cell fill='both'> - <JButton id='selectOtherSpecies'/> + <JButton id='selectOtherSpeciesButton'/> </cell> <cell fill='both'> - <JButton id='addSpeciesProtocol'/> + <JButton id='addSpeciesProtocolButton'/> </cell> </row> <row fill='both' weighty='1'> Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -420,8 +420,8 @@ @Override public void onCloseUI() { - if (log.isInfoEnabled()) { - log.info("closing: " + ui); + if (log.isDebugEnabled()) { + log.debug("closing: " + ui); } clearValidators(); } 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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ExportAllCaracteristicAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -51,12 +51,7 @@ protected File file; public ExportAllCaracteristicAction(EditProtocolUIHandler handler) { - super(handler, - "export", - _("tutti.action.exportAllCaracteristic"), - _("tutti.action.exportAllCaracteristic.tip"), - true - ); + super(handler, true); } @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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ExportProtocolCaracteristicAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -25,8 +25,8 @@ */ import com.ezware.oxbow.swingbits.util.Preconditions; -import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.TuttiIOUtil; +import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.service.protocol.TuttiProtocolImportExportService; import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; import fr.ifremer.tutti.ui.swing.util.action.AbstractTuttiAction; @@ -52,12 +52,7 @@ private File file; public ExportProtocolCaracteristicAction(EditProtocolUIHandler handler) { - super(handler, - "export", - _("tutti.action.exportProtocolCaracteristic"), - _("tutti.action.exportProtocolCaracteristic.tip"), - true - ); + super(handler, true); } @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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ExportProtocolSpeciesAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -26,8 +26,8 @@ import com.ezware.oxbow.swingbits.util.Preconditions; import com.google.common.collect.Lists; -import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocol; import fr.ifremer.tutti.TuttiIOUtil; +import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocol; import fr.ifremer.tutti.service.protocol.TuttiProtocolImportExportService; import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; import fr.ifremer.tutti.ui.swing.util.action.AbstractTuttiAction; @@ -54,12 +54,7 @@ private File file; public ExportProtocolSpeciesAction(EditProtocolUIHandler handler) { - super(handler, - "export", - _("tutti.action.exportProtocolSpecies"), - _("tutti.action.exportProtocolSpecies.tip"), - true - ); + super(handler, true); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ImportProtocolCaracteristicAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ImportProtocolCaracteristicAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ImportProtocolCaracteristicAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -51,16 +51,11 @@ private File file; public ImportProtocolCaracteristicAction(EditProtocolUIHandler handler) { - super(handler, - "import", - _("tutti.action.importProtocolCaracteristic"), - _("tutti.action.importProtocolCaracteristic.tip"), - true - ); + super(handler, true); } @Override - protected boolean prepareAction()throws Exception { + protected boolean prepareAction() throws Exception { boolean doAction = super.prepareAction(); Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ImportProtocolSpeciesAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ImportProtocolSpeciesAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/ImportProtocolSpeciesAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -54,12 +54,7 @@ private File file; public ImportProtocolSpeciesAction(EditProtocolUIHandler handler) { - super(handler, - "import", - _("tutti.action.importProtocolSpecies"), - _("tutti.action.importProtocolSpecies.tip"), - false - ); + super(handler, false); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/RemoveSpeciesProtocolAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/RemoveSpeciesProtocolAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/RemoveSpeciesProtocolAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -46,12 +46,7 @@ public class RemoveSpeciesProtocolAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { public RemoveSpeciesProtocolAction(EditProtocolUIHandler handler) { - super(handler, - "batch-delete", - _("tutti.action.removeSpeciesProtocol"), - _("tutti.action.removeSpeciesProtocol.tip"), - false - ); + super(handler, false); } @Override Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/SaveProtocolAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/SaveProtocolAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/SaveProtocolAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -51,12 +51,7 @@ private static final Log log = LogFactory.getLog(SaveProtocolAction.class); public SaveProtocolAction(EditProtocolUIHandler handler) { - super(handler, - "save", - _("tutti.action.saveProtocol"), - _("tutti.action.saveProtocol.tip"), - true - ); + super(handler, true); } /** @@ -105,11 +100,10 @@ } @Override - public void postAction(Throwable error) { - super.postAction(error); - + public void postSuccessAction() { getContext().getMainUI().getHandler().setBodyTitle( EditProtocolUIHandler.getTitle(true)); + } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/SelectOtherSpeciesAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/SelectOtherSpeciesAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/SelectOtherSpeciesAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -50,12 +50,7 @@ protected Species selectedSpecies; public SelectOtherSpeciesAction(EditProtocolUIHandler handler) { - super(handler, - null, - _("tutti.action.selectOtherSpecies.text"), - _("tutti.action.selectOtherSpecies.tip"), - false - ); + super(handler, false); } @Override @@ -84,7 +79,7 @@ } @Override - protected void doAction()throws Exception { + protected void doAction() throws Exception { String decoratedSynonym = decorate(selectedSpecies); String taxonId = String.valueOf(selectedSpecies.getReferenceTaxonId()); selectedSpecies = getModel().getAllReferentSpeciesByTaxonId().get(taxonId); 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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporaryGearExampleAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -52,12 +52,7 @@ private File file; public ExportTemporaryGearExampleAction(ManageTemporaryReferentialUIHandler handler) { - super(handler, - "export", - _("tutti.action.exportTemporaryGearExample"), - _("tutti.action.exportTemporaryGearExample.tip"), - true - ); + super(handler, true ); } @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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporaryPersonExampleAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -53,12 +53,7 @@ private File file; public ExportTemporaryPersonExampleAction(ManageTemporaryReferentialUIHandler handler) { - super(handler, - "export", - _("tutti.action.exportTemporaryPersonExample"), - _("tutti.action.exportTemporaryPersonExample.tip"), - true - ); + super(handler, true ); } @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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporarySpeciesExampleAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -52,16 +52,11 @@ private File file; public ExportTemporarySpeciesExampleAction(ManageTemporaryReferentialUIHandler handler) { - super(handler, - "export", - _("tutti.action.exportTemporarySpeciesExample"), - _("tutti.action.exportTemporarySpeciesExample.tip"), - true - ); + super(handler, true); } @Override - protected boolean prepareAction()throws Exception { + protected boolean prepareAction() throws Exception { boolean doAction = super.prepareAction(); 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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ExportTemporaryVesselExampleAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -52,16 +52,11 @@ private File file; public ExportTemporaryVesselExampleAction(ManageTemporaryReferentialUIHandler handler) { - super(handler, - "export", - _("tutti.action.exportTemporaryVesselExample"), - _("tutti.action.exportTemporaryVesselExample.tip"), - true - ); + super(handler, true); } @Override - protected boolean prepareAction()throws Exception { + protected boolean prepareAction() throws Exception { boolean doAction = super.prepareAction(); 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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporaryGearAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -51,16 +51,11 @@ private File file; public ImportTemporaryGearAction(ManageTemporaryReferentialUIHandler handler) { - super(handler, - "import", - _("tutti.action.importTemporaryGear"), - _("tutti.action.importTemporaryGear.tip"), - true - ); + super(handler, true); } @Override - protected boolean prepareAction()throws Exception { + protected boolean prepareAction() throws Exception { boolean doAction = super.prepareAction(); 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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporaryPersonAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -51,12 +51,7 @@ private File file; public ImportTemporaryPersonAction(ManageTemporaryReferentialUIHandler handler) { - super(handler, - "import", - _("tutti.action.importTemporaryPerson"), - _("tutti.action.importTemporaryPerson.tip"), - true - ); + super(handler, true ); } @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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporarySpeciesAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -51,12 +51,7 @@ private File file; public ImportTemporarySpeciesAction(ManageTemporaryReferentialUIHandler handler) { - super(handler, - "import", - _("tutti.action.importTemporarySpecies"), - _("tutti.action.importTemporarySpecies.tip"), - true - ); + super(handler, true); } @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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ImportTemporaryVesselAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -51,16 +51,11 @@ private File file; public ImportTemporaryVesselAction(ManageTemporaryReferentialUIHandler handler) { - super(handler, - "import", - _("tutti.action.importTemporaryVessel"), - _("tutti.action.importTemporaryVessel.tip"), - true - ); + super(handler, true); } @Override - protected boolean prepareAction()throws Exception { + protected boolean prepareAction() throws Exception { boolean doAction = super.prepareAction(); Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUI.css 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUI.css 2013-03-11 10:01:36 UTC (rev 572) @@ -22,58 +22,107 @@ * #L% */ +#manageTemporaryReferentialTopPanel { + _help: {"tuttihelp.manageTemporaryReferential.help"}; +} + #information { actionIcon: information; text: "tutti.information.import.temporary.referential"; } + #speciesLabel { text: "tutti.label.referential.species"; + toolTipText: "tuttihelp.manageTemporaryReferential.label.referential.species.tip"; icon: {SwingUtil.createImageIcon("action-species.gif")}; } #exportSpeciesExampleButton { + actionIcon: export; + text: "tutti.action.exportTemporarySpeciesExample"; + mnemonic: E; _tuttiAction: {ExportTemporarySpeciesExampleAction.class}; + toolTipText: "tuttihelp.manageTemporaryReferential.action.exportTemporarySpeciesExample.tip"; + _help: {"tuttihelp.manageTemporaryReferential.action.exportTemporarySpeciesExample.help"}; } #importSpeciesButton { + actionIcon: import; + text: "tutti.action.importTemporarySpecies"; + mnemonic: I; _tuttiAction: {ImportTemporarySpeciesAction.class}; + toolTipText: "tuttihelp.manageTemporaryReferential.action.importTemporarySpecies.tip"; + _help: {"tuttihelp.manageTemporaryReferential.action.importTemporarySpecies.help"}; } #vesselLabel { text: "tutti.label.referential.vessel"; + toolTipText: "tuttihelp.manageTemporaryReferential.label.referential.vessel.tip"; actionIcon: vessel; } #exportVesselExampleButton { + actionIcon: export; + text: "tutti.action.exportTemporaryVesselExample"; + mnemonic: E; _tuttiAction: {ExportTemporaryVesselExampleAction.class}; + toolTipText: "tuttihelp.manageTemporaryReferential.action.exportTemporaryVesselExample.tip"; + _help: {"tuttihelp.manageTemporaryReferential.action.exportTemporaryVesselExample.help"}; } #importVesselButton { + actionIcon: import; + text: "tutti.action.importTemporaryVessel"; + mnemonic: I; _tuttiAction: {ImportTemporaryVesselAction.class}; + toolTipText: "tuttihelp.manageTemporaryReferential.action.importTemporaryVessel.tip"; + _help: {"tuttihelp.manageTemporaryReferential.action.importTemporaryVessel.help"}; } #gearLabel { text: "tutti.label.referential.gear"; + toolTipText: "tuttihelp.manageTemporaryReferential.label.referential.gear.tip"; actionIcon: gear; } #exportGearExampleButton { + actionIcon: export; + text: "tutti.action.exportTemporaryGearExample"; + mnemonic: E; _tuttiAction: {ExportTemporaryGearExampleAction.class}; + toolTipText: "tuttihelp.manageTemporaryReferential.action.exportTemporaryGearExample.tip"; + _help: {"tuttihelp.manageTemporaryReferential.action.exportTemporaryGearExample.help"}; } #importGearButton { + actionIcon: import; + text: "tutti.action.importTemporaryGear"; + mnemonic: I; _tuttiAction: {ImportTemporaryGearAction.class}; + toolTipText: "tuttihelp.manageTemporaryReferential.action.importTemporaryGear.tip"; + _help: {"tuttihelp.manageTemporaryReferential.action.importTemporaryGear.help"}; } #personLabel { text: "tutti.label.referential.person"; + toolTipText: "tuttihelp.manageTemporaryReferential.label.referential.person.tip"; actionIcon: person; } #exportPersonExampleButton { + actionIcon: export; + text: "tutti.action.exportTemporaryPersonExample"; + mnemonic: E; _tuttiAction: {ExportTemporaryPersonExampleAction.class}; + toolTipText: "tuttihelp.manageTemporaryReferential.action.exportTemporaryPersonExample.tip"; + _help: {"tuttihelp.manageTemporaryReferential.action.exportTemporaryPersonExample.help"}; } #importPersonButton { + actionIcon: import; + text: "tutti.action.importTemporaryPerson"; + mnemonic: I; _tuttiAction: {ImportTemporaryPersonAction.class}; + toolTipText: "tuttihelp.manageTemporaryReferential.action.importTemporaryPerson.tip"; + _help: {"tuttihelp.manageTemporaryReferential.action.importTemporaryPerson.help"}; } \ No newline at end of file Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUI.jaxx 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUI.jaxx 2013-03-11 10:01:36 UTC (rev 572) @@ -22,12 +22,14 @@ #L% --> <JPanel id='manageTemporaryReferentialTopPanel' layout='{new BorderLayout()}' + decorator='help' implements='fr.ifremer.tutti.ui.swing.util.TuttiUI<TuttiUIContext, ManageTemporaryReferentialUIHandler>'> <import> + fr.ifremer.tutti.ui.swing.TuttiHelpBroker + fr.ifremer.tutti.ui.swing.TuttiUIContext fr.ifremer.tutti.ui.swing.util.TuttiUI - fr.ifremer.tutti.ui.swing.TuttiUIContext static org.nuiton.i18n.I18n._ </import> @@ -53,6 +55,9 @@ <TuttiUIContext id='model' initializer='getContextValue(TuttiUIContext.class)'/> + <TuttiHelpBroker id='broker' + constructorParams='"tuttihelp.manageTemporaryReferential.help"'/> + <Table constraints='BorderLayout.CENTER'> <row> <cell> Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUIHandler.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -69,7 +69,9 @@ @Override public void onCloseUI() { - + if (log.isDebugEnabled()) { + log.debug("closing: " + ui); + } } @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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java 2013-03-11 10:01:36 UTC (rev 572) @@ -27,6 +27,7 @@ import com.google.common.base.Preconditions; import com.google.common.collect.Lists; import com.google.common.collect.Sets; +import fr.ifremer.tutti.TuttiTechnicalException; import fr.ifremer.tutti.persistence.entities.IdAware; import fr.ifremer.tutti.service.DecoratorService; import fr.ifremer.tutti.ui.swing.TuttiDataContext; @@ -143,15 +144,6 @@ return new DefaultComboBoxModel(items); } - public DefaultComboBoxModel newComboActionModel(Class<?>... actionNames) { - List<Object> items = Lists.newArrayListWithCapacity(actionNames.length); - for (Class<?> actionName : actionNames) { - Action action = createAction((Class<AbstractTuttiAction>) actionName); - items.add(action); - } - return newComboModel(items.toArray()); - } - public final M getModel() { return ui.getModel(); } @@ -401,36 +393,54 @@ protected <A extends AbstractTuttiAction> void initAction(AbstractButton abstractButton, Class<A> actionName) { - Action action = createAction(actionName); + Action action = createUIAction(abstractButton, actionName); abstractButton.setAction(action); } - protected <A extends AbstractTuttiAction> TuttiUIAction<A> createAction(Class<A> actionName) { - TuttiUIAction result = null; - if (actionName != null) { - try { + protected <A extends AbstractTuttiAction> TuttiUIAction<A> createUIAction(AbstractButton abstractButton, + Class<A> actionName) { + try { - AbstractTuttiUIHandler handler = this; + // create logic action + A logicAction = createLogicAction(actionName); - if (AbstractMainUITuttiAction.class.isAssignableFrom(actionName) && - getContext().getMainUI() != null) { - handler = getContext().getMainUI().getHandler(); - } + // create ui action + TuttiUIAction<A> result = new TuttiUIAction<A>(abstractButton, + logicAction); + return result; + } catch (Exception e) { + throw new TuttiTechnicalException( + "Could not instanciate action " + actionName, e); + } - // create action - AbstractTuttiAction action = ConstructorUtils.invokeConstructor(actionName, handler); + } - // create ui action - result = new TuttiUIAction(action); + public <A extends AbstractTuttiAction> A createLogicAction(Class<A> actionName) { + try { - } catch (Exception e) { - throw new RuntimeException( - "Could not instanciate action " + actionName, e); + AbstractTuttiUIHandler handler = this; + + if (AbstractMainUITuttiAction.class.isAssignableFrom(actionName) && + getContext().getMainUI() != null) { + handler = getContext().getMainUI().getHandler(); } + + // create action + A result = ConstructorUtils.invokeConstructor(actionName, handler); + return result; + } catch (Exception e) { + throw new RuntimeException( + "Could not instanciate action " + actionName, e); } - return result; } + public <A extends AbstractTuttiAction> A getLogicAction(AbstractButton b){ + Action action = b.getAction(); + Preconditions.checkNotNull(action); + Preconditions.checkState(action instanceof TuttiUIAction); + return ((TuttiUIAction<A>)action).getLogicAction(); + } + protected void doAction(AbstractButton button, ActionEvent event) { button.getAction().actionPerformed(event); } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/ActionListCellRenderer.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/ActionListCellRenderer.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/ActionListCellRenderer.java 2013-03-11 10:01:36 UTC (rev 572) @@ -27,6 +27,7 @@ import javax.swing.Action; import javax.swing.DefaultListCellRenderer; import javax.swing.Icon; +import javax.swing.JButton; import javax.swing.JList; import javax.swing.border.EmptyBorder; import java.awt.Component; @@ -47,9 +48,10 @@ int index, boolean isSelected, boolean cellHasFocus) { + Component result = super.getListCellRendererComponent( list, value, index, isSelected, cellHasFocus); - Action action = (Action) value; + Action action = ((JButton) value).getAction(); setIcon((Icon) action.getValue(Action.LARGE_ICON_KEY)); setText((String) action.getValue(Action.NAME)); setToolTipText((String) action.getValue(Action.SHORT_DESCRIPTION)); Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/action/AbstractTuttiAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/action/AbstractTuttiAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/action/AbstractTuttiAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -50,29 +50,16 @@ protected final H handler; - protected final String actionName; + protected String actionDescription; - protected final String actionDescription; - - protected final String actionIcon; - protected final boolean hideBody; -// protected Throwable error; - protected final Object lock = new Object(); protected abstract void doAction() throws Exception; - protected AbstractTuttiAction(H handler, - String actionIcon, - String actionName, - String actionDescription, - boolean hideBody) { + protected AbstractTuttiAction(H handler, boolean hideBody) { this.handler = handler; - this.actionName = actionName; - this.actionDescription = actionDescription; - this.actionIcon = actionIcon; this.hideBody = hideBody; } @@ -85,16 +72,26 @@ // by default nothing to clean } - public void postAction(Throwable error) { + public void postSuccessAction() { // by default nothing to do after action } + public void postFailedAction(Throwable error) { + // by default nothing to do after action + } + public static void runAction(AbstractTuttiAction action) { + Throwable error = null; try { action.doAction(); + action.postSuccessAction(); } catch (Throwable e) { + error = e; throw TuttiActionException.propagateError(action, e); } finally { + if (error != null) { + action.postFailedAction(error); + } action.releaseAction(); } } @@ -115,16 +112,12 @@ return handler.getContext(); } - protected String getActionName() { - return actionName; - } - public String getActionDescription() { return actionDescription; } - public String getActionIcon() { - return actionIcon; + public void setActionDescription(String actionDescription) { + this.actionDescription = actionDescription; } public boolean isHideBody() { @@ -153,14 +146,7 @@ return getDecorator(object.getClass(), null).toString(object); } -// public boolean isFailed() { -// return error != null; -// } -// -// public Throwable getError() { -// return error; -// } - + //FIXME-TC Is this working ? protected void test(final Runnable r) throws InterruptedException { SwingUtilities.invokeLater(new Runnable() { Added: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/action/TuttiActionSwingWorker.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/action/TuttiActionSwingWorker.java (rev 0) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/action/TuttiActionSwingWorker.java 2013-03-11 10:01:36 UTC (rev 572) @@ -0,0 +1,178 @@ +package fr.ifremer.tutti.ui.swing.util.action; + +/* + * #%L + * Tutti :: UI + * $Id$ + * $HeadURL$ + * %% + * Copyright (C) 2012 - 2013 Ifremer + * %% + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program. If not, see + * <http://www.gnu.org/licenses/gpl-3.0.html>. + * #L% + */ + +import fr.ifremer.tutti.ui.swing.content.MainUI; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.jdesktop.swingx.JXTitledPanel; + +import javax.swing.SwingWorker; +import java.awt.Cursor; +import java.util.Timer; +import java.util.TimerTask; + +/** + * Worker to execute logic action. + * + * @author tchemit <chemit@codelutin.com> + * @since 1.0.3 + */ +public class TuttiActionSwingWorker<A extends AbstractTuttiAction> extends SwingWorker<Void, String> { + + /** Logger. */ + private static final Log log = + LogFactory.getLog(TuttiActionSwingWorker.class); + + /** + * Timer used to launch timerTask (to open load dialog). + * + * @since 1.0.2 + */ + private static final Timer t = new Timer(); + + protected final TuttiActionUI actionUI; + + protected final A action; + + protected Throwable error; + + protected TimerTask timer; + + protected TuttiActionSwingWorker(A action) { + + this.action = action; + this.actionUI = action.getContext().getActionUI(); + } + + public Throwable getError() { + return error; + } + + public boolean isFailed() { + return error != null; + } + + @Override + protected Void doInBackground() throws Exception { + + if (!isCancelled()) { + + timer = new TimerTask() { + + @Override + public void run() { + if (isCancelled() || isDone()) { + + if (log.isDebugEnabled()) { + log.debug("Task [" + action + "] was already canceled or done, do nothing"); + } + } else { + + if (log.isDebugEnabled()) { + log.debug("Task [" + action + "] is started, show waiting dialog"); + } + + actionUI.open(action); + } + } + }; + + t.schedule(timer, 1000); + + try { + + action.doAction(); + + } catch (Throwable e) { + if (log.isErrorEnabled()) { + log.error("Task [" + this + "] Error while doAction: ", e); + } + error = e; + } finally { + if (log.isInfoEnabled()) { + log.info("Task [" + this + "] done"); + } + + action.releaseAction(); + } + } + return null; + } + + @Override + protected void done() { + super.done(); + + if (log.isInfoEnabled()) { + log.info("Task [" + this + "] execute done method after all"); + } + + if (error == null) { + + // success hook + action.postSuccessAction(); + } else { + + // fail hook + action.postFailedAction(error); + + } + + if (timer != null) { + + timer.cancel(); + } + + actionUI.close(); + + updateBusyState(false); + } + + protected void updateBusyState(boolean busy) { + + boolean hideBody = action.isHideBody(); + + final MainUI mainUI = action.getContext().getMainUI(); + JXTitledPanel body = mainUI.getBody(); + if (busy) { + // ui bloquee + if (log.isDebugEnabled()) { + log.debug("block ui in busy mode"); + } + mainUI.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); + } else { + // ui debloquee + if (log.isDebugEnabled()) { + log.debug("unblock ui in none busy mode"); + } + mainUI.setCursor(Cursor.getDefaultCursor()); + } + if (hideBody) { + body.setVisible(!busy); + } + + } +} Property changes on: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/action/TuttiActionSwingWorker.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision HeadURL Added: svn:eol-style + native Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/action/TuttiUIAction.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/action/TuttiUIAction.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/action/TuttiUIAction.java 2013-03-11 10:01:36 UTC (rev 572) @@ -24,20 +24,14 @@ * #L% */ -import fr.ifremer.tutti.ui.swing.content.MainUI; -import jaxx.runtime.SwingUtil; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.jdesktop.swingx.JXTitledPanel; import javax.swing.AbstractAction; -import javax.swing.ImageIcon; +import javax.swing.AbstractButton; +import javax.swing.Icon; import javax.swing.SwingUtilities; -import javax.swing.SwingWorker; -import java.awt.Cursor; import java.awt.event.ActionEvent; -import java.util.Timer; -import java.util.TimerTask; import java.util.concurrent.CancellationException; import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutorService; @@ -56,36 +50,23 @@ /** Logger. */ private static final Log log = LogFactory.getLog(TuttiUIAction.class); - /** - * Timer used to launch timerTask (to open load dialog). - * - * @since 1.0.2 - */ - private static final Timer t = new Timer(); - - /** - * Logic Action to perform. - * - * @since 1.0.2 - */ - protected final A action; - public static final ExecutorService waitingThread = Executors.newSingleThreadExecutor(); - public TuttiUIAction(A action) { + private static final String LOGIC_ACTION = "logicAction"; - this.action = action; + public TuttiUIAction(AbstractButton button, A action) { - String icon = action.getActionIcon(); - if (icon != null) { - ImageIcon actionIcon = SwingUtil.createActionIcon(icon); - putValue(SMALL_ICON, actionIcon); - putValue(LARGE_ICON_KEY, actionIcon); + putValue(LOGIC_ACTION, action); + + // fill the ui action from the button + setActionKey(action.getClass().getName()); + if (button != null) { + setActionIcon(button.getIcon()); + setActionName(button.getText()); + setActionDescription(button.getToolTipText()); + setActionMnemonic(button.getMnemonic()); } - putValue(ACTION_COMMAND_KEY, action.getClass().getName()); - putValue(NAME, action.getActionName()); - putValue(SHORT_DESCRIPTION, action.getActionDescription()); } @Override @@ -98,6 +79,8 @@ // prepare action boolean doAction; + A action = getLogicAction(); + try { doAction = action.prepareAction(); } catch (Exception e) { @@ -132,6 +115,9 @@ new Runnable() { @Override public void run() { + + A action = getLogicAction(); + try { worker.get(); } catch (ExecutionException e) { @@ -161,148 +147,30 @@ } } - public void setMnemonic(int key) { - putValue(MNEMONIC_KEY, key); + public void setActionIcon(Icon actionIcon) { + putValue(SMALL_ICON, actionIcon); + putValue(LARGE_ICON_KEY, actionIcon); } + public void setActionKey(String actionKey) { + putValue(ACTION_COMMAND_KEY, actionKey); + } - protected static class TuttiActionSwingWorker<A extends AbstractTuttiAction> extends SwingWorker<Void, String> { + public void setActionName(String actionName) { + putValue(NAME, actionName); + } - protected final TuttiActionUI actionUI; + public void setActionDescription(String actionDescription) { + putValue(SHORT_DESCRIPTION, actionDescription); + getLogicAction().setActionDescription(actionDescription); + } - protected final A action; + public void setActionMnemonic(int key) { + putValue(MNEMONIC_KEY, key); + } - protected Throwable error; - - protected TimerTask timer; - - protected TuttiActionSwingWorker(A action) { - - this.action = action; - this.actionUI = action.getContext().getActionUI(); - -// addPropertyChangeListener(new PropertyChangeListener() { -// @Override -// public void propertyChange(PropertyChangeEvent evt) { -// if (evt.getPropertyName().equals("state")) { -// StateValue newValue = (StateValue) evt.getNewValue(); -// if (StateValue.DONE == newValue) { -// -// // close any ui resource -// -// if (timer != null) { -// -// timer.cancel(); -// } -// -// updateBusyState(false); -// -// actionUI.close(); -// } -// } -// } -// }); - } - - @Override - protected Void doInBackground() throws Exception { - - if (!isCancelled()) { - - timer = new TimerTask() { - - @Override - public void run() { - if (isCancelled() || isDone()) { - - if (log.isDebugEnabled()) { - log.debug("Task [" + action + "] was already canceled or done, do nothing"); - } - } else { - - if (log.isDebugEnabled()) { - log.debug("Task [" + action + "] is started, show waiting dialog"); - } - - actionUI.open(action); - } - } - }; - - t.schedule(timer, 1000); - - try { - - action.doAction(); - - } catch (Throwable e) { - if (log.isErrorEnabled()) { - log.error("Task [" + this + "] Error while doAction: ", e); - } - error = e; - } finally { - if (log.isInfoEnabled()) { - log.info("Task [" + this + "] done"); - } - - action.releaseAction(); - } - } - return null; - } - - @Override - protected void done() { - super.done(); - - if (log.isInfoEnabled()) { - log.info("Task [" + this + "] execute done method after all"); - } - - // user after action call - action.postAction(error); - - if (timer != null) { - - timer.cancel(); - } - - actionUI.close(); - - updateBusyState(false); - } - - protected void updateBusyState(boolean busy) { - - boolean hideBody = action.isHideBody(); - - final MainUI mainUI = action.getContext().getMainUI(); - JXTitledPanel body = mainUI.getBody(); - if (busy) { - // ui bloquee - if (log.isDebugEnabled()) { - log.debug("block ui in busy mode"); - } - mainUI.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); - } else { - // ui debloquee - if (log.isDebugEnabled()) { - log.debug("unblock ui in none busy mode"); - } - mainUI.setCursor(Cursor.getDefaultCursor()); - } - if (hideBody) { - body.setVisible(!busy); - } - - } - - public Throwable getError() { - return error; - } - - public boolean isFailed() { - return error != null; - } + public A getLogicAction() { + return (A) getValue("logicAction"); } + } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/editor/CaracteristicValueEditor.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/editor/CaracteristicValueEditor.java 2013-03-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/editor/CaracteristicValueEditor.java 2013-03-11 10:01:36 UTC (rev 572) @@ -25,6 +25,7 @@ * #L% */ +import com.google.common.collect.Lists; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; import fr.ifremer.tutti.service.DecoratorService; @@ -108,7 +109,9 @@ JComboBox comboBox = new JComboBox(); comboBox.setRenderer(new DecoratorListCellRenderer(decorator)); - List<CaracteristicQualitativeValue> data = caracteristic.getQualitativeValue(); + // always use a copy of data + List<CaracteristicQualitativeValue> data = + Lists.newArrayList(caracteristic.getQualitativeValue()); // add a null value at first position if (!data.isEmpty() && data.get(0) != null) { data.add(0, null); 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-11 09:42:16 UTC (rev 571) +++ trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties 2013-03-11 10:01:36 UTC (rev 572) @@ -1,23 +1,16 @@ tutti.about.bottomText=Copyright %s - %s - version %s tutti.about.message=<h3>Tutti</h3><p><strong>Outil de saisie de données d'opérations et de captures au cours des campagnes halieutiques.</strong></p><br/><p>Ce logiciel permettra la saisie en mer des données d'opération de pêche (positions, environnement, engin, etc) et des captures associées (composition de la capture en espèces scientifiques avec poids, nombres, tailles etc) pour l'ensemble des campagnes halieutiques réalisées par l'Ifremer.</p><p>Ce projet a été initiée en 2012 par l'<a href\="http\://www.ifremer.fr">Ifremer</a> et réalisé par la société <a href\="http\://codelutin.com">Codelutin</a>.</p><hr/><br/><p>Pour plus d'informations, vous pouvez visiter le <a href\="http\://maven-site.forge.codelutin.com/tutti">site du projet</a>.</p><p>Projet hébergé sur la forge <a href\="http\://forge.codelutin.com/projects/tutti">Forge.codelutin.com</a>.</p> +tutti.action.= tutti.action.about=À propos -tutti.action.about.tip=À Propos -tutti.action.addSpecies.text=... -tutti.action.addSpecies.tip=Sélectionner une autre espèce -tutti.action.addSpeciesProtocol.tip=Ajouter une espèce au protocole +tutti.action.addSpecies=... tutti.action.attachments=(%s) tutti.action.attachments.tip=Pièces jointes tutti.action.cancel=Annuler -tutti.action.cancel.editCruise=Annuler -tutti.action.cancel.editCruise.tip=Annuler l'édition (ou la création) de la campagne -tutti.action.cancel.editFishingOperation=Annuler -tutti.action.cancel.editFishingOperation.tip=Annuler la création du trait -tutti.action.cancel.editProgram=Annuler -tutti.action.cancel.editProgram.tip=Annuler l'édition (ou la création) de la série de campagne -tutti.action.cancel.editProtocol=Annuler -tutti.action.cancel.editProtocol.tip=Annuler l'édition (ou la création) du protocole -tutti.action.cancelEditCatchBatch= -tutti.action.cancelEditCatchBatch.tip= +tutti.action.cancelEditCatchBatch=Réinitialiser +tutti.action.cancelEditCruise=Annuler +tutti.action.cancelEditFishingOperation=Annuler +tutti.action.cancelEditProgram=Annuler +tutti.action.cancelEditProtocol=Annuler tutti.action.chooseDbExportFile=Exporter la base de données tutti.action.chooseProtocolCaracteristicFile=Choisir le fichier des caractéristiques tutti.action.chooseProtocolFile=Choisir le fichier de protocole @@ -27,11 +20,9 @@ tutti.action.chooseReferentialSpeciesFile=Choisir le fichier de référentiel espèce tutti.action.chooseReferentialVesselFile=Choisir le fichier de référentiel navire tutti.action.cloneProtocol=Cloner -tutti.action.cloneProtocol.tip=Dupliquer le protocole sélectionné tutti.action.close=Fermer tutti.action.closeAttachment.tip=Fermer la fenêtre des picèes-jointes tutti.action.closeDb=Fermer -tutti.action.closeDb.tip=Fermer la base de données en cours d'utilisation tutti.action.computeWeights=Elever les poids tutti.action.computeWeights.error.incoherentCategoryWeight=Le poids total des mensurations est supérieur au poids de la catégorie tutti.action.computeWeights.error.incoherentCategoryWeight.title=Incohérence @@ -48,130 +39,74 @@ tutti.action.computeWeights.error.noWeight=Un lot n'a pas de poids tutti.action.computeWeights.replaceTotalSortedWeight.message=Le Poids total VRAC saisi est supérieur de moins de %s%% au Poids total Vrac trié.%nEst-ce bien une valeur observée ? Si non, la valeur sera remplacée par le poids calculé. tutti.action.computeWeights.replaceTotalSortedWeight.title=Poids total VRAC peu différent du Poids total Vrac trié -tutti.action.computeWeights.tip=Elever les poids tutti.action.configuration=Configuration -tutti.action.configuration.tip=Configurer Tutti tutti.action.createMelag=Èspèces d'un MELAG -tutti.action.createMelag.tip=Calcul des poids des lots appartenant à un MELAG tutti.action.createSpeciesBatch=Créer un lot pour une espèce tutti.action.deleteProtocol=Supprimer tutti.action.deleteProtocol.message=Vous êtes sur le point de supprimer le protocol %s -tutti.action.deleteProtocol.tip=Supprimer le protocole sélectioné tutti.action.deleteProtocol.title=Supprimer le protocole sélectioné tutti.action.editCatches=Saisir les captures -tutti.action.editCatches.tip=Saisir des captures tutti.action.editCruise=Éditer -tutti.action.editCruise.tip=Éditer la campagne sélectionnée tutti.action.editFishingOperation.tip=Éditer l'opération de pêche tutti.action.editProgram=Éditer -tutti.action.editProgram.tip=Éditer le programme sélectionné tutti.action.editProtocol=Éditer -tutti.action.editProtocol.tip=Éditer le protocol sélectionné tutti.action.editSelectedCruise=Campagne -tutti.action.editSelectedCruise.tip=Éditer la campagne sélectionnée tutti.action.editSelectedProgram=Série de campagne tutti.action.editSelectedProgram.tip=Éditer la série de campagne sélectionnée tutti.action.editSelectedProtocol=Protocole -tutti.action.editSelectedProtocol.tip=Éditer le protocole sélectionné tutti.action.exit=Quitter -tutti.action.exit.tip=Quitter l'application -tutti.action.exportAllCaracteristic=Exporter toutes les caractéristiques -tutti.action.exportAllCaracteristic.tip=Exporter toutes les caractéristiques (sans les affecter à un écran) tutti.action.exportDb=Exporter -tutti.action.exportDb.tip=Exporter la base de données au format zip tutti.action.exportProtocol=Exporter -tutti.action.exportProtocol.tip=Exporter le protocole sélectionné +tutti.action.exportProtocolAllCaracteristic=Exporter toutes les caractéristiques tutti.action.exportProtocolCaracteristic=Exporter les caractéristiques -tutti.action.exportProtocolCaracteristic.tip=Exporter les caractéristiques du protocole tutti.action.exportProtocolSpecies=Exporter les espèces -tutti.action.exportProtocolSpecies.tip=Exporter les espèces du protocole tutti.action.exportTemporaryGearExample=Exporter -tutti.action.exportTemporaryGearExample.tip=Exporter un exemple de référentiel Engin tutti.action.exportTemporaryPersonExample=Exporter -tutti.action.exportTemporaryPersonExample.tip=Exporter un exemple de référentiel Personne tutti.action.exportTemporarySpeciesExample=Exporter -tutti.action.exportTemporarySpeciesExample.tip=Exporter un exemple de référentiel Espèces tutti.action.exportTemporaryVesselExample=Exporter -tutti.action.exportTemporaryVesselExample.tip=Exporter un exemple de référentiel Navire tutti.action.generate=Générer tutti.action.generateCampaignName=Générer le nom tutti.action.importCasino=Import Casino -tutti.action.importCasino.tip=Import Casino tutti.action.importProtocol=Importer -tutti.action.importProtocol.tip=Importer un protocole tutti.action.importProtocolCaracteristic=Importer les caractéristiques -tutti.action.importProtocolCaracteristic.tip=importer les caractéristiques dans le protocole tutti.action.importProtocolSpecies=Importer les espèces -tutti.action.importProtocolSpecies.tip=importer les espèces dans le protocole tutti.action.importPupitri=Import Pupitri -tutti.action.importPupitri.tip=Import Pupitri tutti.action.importTemporaryGear=Importer -tutti.action.importTemporaryGear.tip=Importer un référentiel temporaire d'engins tutti.action.importTemporaryPerson=Importer -tutti.action.importTemporaryPerson.tip=Importer un référentiel temporaire de personnes tutti.action.importTemporaryReferential=Référentiels temporaires -tutti.action.importTemporaryReferential.tip=Importer des référentiels temporaires tutti.action.importTemporarySpecies=Importer -tutti.action.importTemporarySpecies.tip=Importer un référentiel temporaire d'espèces tutti.action.importTemporaryVessel=Importer -tutti.action.importTemporaryVessel.tip=Importer un référentiel temporaire de navires tutti.action.installDb=Installer -tutti.action.installDb.tip=Télécharger puis installer la base de données tutti.action.manageDb=Gestionnaire de base -tutti.action.manageDb.tip=Gérer la base de données utilisée par Tutti tutti.action.newCruise=Nouveau -tutti.action.newCruise.tip=Créer une nouvelle campagne -tutti.action.newFishingOperation.tip=Créer une nouvelle opération de pêche tutti.action.newProgram=Nouveau -tutti.action.newProgram.tip=Créer une nouvelle série de campagne tutti.action.newProtocol=Nouveau -tutti.action.newProtocol.tip=Créer un nouveau protocole tutti.action.openDb=Ouvrir -tutti.action.openDb.tip=Ouvrir la base de données détectée par Tutti tutti.action.reload.actions=Recharger les actions tutti.action.reload.application=Recharger l'application tutti.action.reload.ui=Recharger l'interface graphique tutti.action.removeCaracteristic=Supprimer la caractéristique tutti.action.removeSpeciesBatch=Supprimer le lot -tutti.action.removeSpeciesBatch.tip=Supprimer le lot courant (celui de la ligne sélectionnée) et tous ces fils tutti.action.removeSpeciesProtocol=Supprimer l'espèce -tutti.action.removeSpeciesProtocol.tip=Supprimer l'espèce tutti.action.removeSpeciesSubBatch=Supprimer les lots fils -tutti.action.removeSpeciesSubBatch.tip=Supprimer tous les lots fils du lot sélectionné tutti.action.renameSpeciesBatch=Corriger l'espèce -tutti.action.renameSpeciesBatch.tip=Corriger l'espèce sur tout le lot sélectionné -tutti.action.reset.editCatchBatch=Réinitialiser -tutti.action.reset.editCatchBatch.tip=Réinitialiser l'édition de la capture tutti.action.reset.editFishingOperation=Réinitialiser tutti.action.reset.editFishingOperation.tip=Réinitialiser l'édition du trait tutti.action.reset.fishingOperationValidState=Réinitialiser tutti.action.save=Enregistrer tutti.action.saveCatchBatch=Sauver -tutti.action.saveCatchBatch.tip=Sauver la capture tutti.action.saveCruise=Enregistrer -tutti.action.saveCruise.tip=Enregistrer la campagne tutti.action.saveFishingOperation=Enregistrer -tutti.action.saveFishingOperation.tip=Enregistrer le trait tutti.action.saveProgram=Enregistrer -tutti.action.saveProgram.tip=Enregistrer la série de campagne tutti.action.saveProtocol=Enregistrer -tutti.action.saveProtocol.tip=Enregistrer le protocol tutti.action.selectCruise=Sélectionner une campagne -tutti.action.selectCruise.tip=Sélectionner la campagne à utiliser -tutti.action.selectOtherSpecies.text=... -tutti.action.selectOtherSpecies.tip=Sélectionner une autre espèce -tutti.action.showHelp.tip= +tutti.action.selectOtherSpecies=... tutti.action.site=Site -tutti.action.site.tip=Accéder au site du projet Tutti tutti.action.splitSpeciesBatch=Catégoriser le lot -tutti.action.splitSpeciesBatch.tip=Catégoriser le lot courant (celui de la ligne sélectionné) tutti.action.updateApplication=Vérifier les mises à jour -tutti.action.updateApplication.tip=Vérifier les mises à jour logicielles -tutti.action.updateReferential=Vérifier les mises à jour -tutti.action.updateReferential.tip=Mettre à jour les référentiels si nécessaire +tutti.action.upgradeDb=Vérifier les mises à jour tutti.action.validate=Valider tutti.action.validateCatches=Valider les captures -tutti.action.validateCatches.tip=Valider les captures tutti.application.config=Configuration de l'application Tutti tutti.application.name=Tutti tutti.common.error=Erreur @@ -217,7 +152,11 @@ tutti.flash.information.caractristic.exported.from.protocol=Caractéristiques du protocole exportées dans le fichier <strong>%s</strong>. tutti.flash.information.cruiseCreated=La campagne <strong>%s</strong> a été créée. tutti.flash.information.cruiseSaved=La campagne <strong>%s</strong> a été enregistrée. +tutti.flash.information.db.closed=La base de données <strong>%s</strong> est fermée. tutti.flash.information.db.exported=Base exportée dans l'archive <strong>%s</strong>. +tutti.flash.information.db.installed=La base de données <strong>%s</strong> est installée. +tutti.flash.information.db.installed.= +tutti.flash.information.db.opened=La base de données <strong>%s</strong> est ouverte. tutti.flash.information.programCreated=La série de campagne <strong>%s</strong> a été créée. tutti.flash.information.programSaved=La série de campagne <strong>%s</strong> a été enregistrée. tutti.flash.information.protocolCreated=Le protocole <strong>%s</strong> a été créé. @@ -265,13 +204,9 @@ tutti.label.cruise.surveyPart=Série partielle tutti.label.cruise.year=Année tutti.label.filterSpeciesBatchMode.label=Filtre -tutti.label.filterSpeciesBatchMode.label.tip=Pour filtrer les lots tutti.label.filterSpeciesBatchMode.mode.all=Aucun -tutti.label.filterSpeciesBatchMode.mode.all.tip=Pas de filtre (tous les lots sont visibles) tutti.label.filterSpeciesBatchMode.mode.leaf=Feuilles -tutti.label.filterSpeciesBatchMode.mode.leaf.tip=Voir uniquement les lots *feuilles* tutti.label.filterSpeciesBatchMode.mode.root=Parents (%s) -tutti.label.filterSpeciesBatchMode.mode.root.tip=Voir uniquement les lots *parents* tutti.label.filterVesselType=Filtre \: tutti.label.filterVesselType.all=Tout tutti.label.filterVesselType.all.tip=Tout les navires @@ -383,13 +318,9 @@ tutti.legend.frequencyConfiguration=Configuration tutti.legend.splitSpeciesBatchConfiguration=Configuration tutti.menu.actions=Actions -tutti.menu.actions.tip=Actions tutti.menu.administration=Administration -tutti.menu.administration.tip=Administrer Tutti tutti.menu.file=Fichier -tutti.menu.file.tip=Fichier tutti.menu.help=Aide -tutti.menu.help.tip=Aide tutti.menu.synchronisationAllegro=Allégro tutti.menu.synchronisationAllegro.tip=Synchronisation Allégro tutti.menu.synchronisationExport=Export @@ -601,11 +532,39 @@ tutti.validator.warning.longitude.outOfBounds=La Latitude doit être comprise entre -180.0 et 180.0 tutti.validator.warning.longitude.second.outOfBounds=La seconde de la longitude doit être comprise entre 0 et 60 tutti.weights.rate.difference.totalAndSorted.description=Pourcentage de différence entre les Poids totaux VRAC triés et les poids totaux VRAC en dessous duquel on demande confirmation sur la saisie. +tuttihelp.createSpeciesBatch.action.addSpecies.tip=Sélectionner une autre espèce +tuttihelp.createSpeciesBatch.action.cancel.tip= +tuttihelp.createSpeciesBatch.action.save.tip= +tuttihelp.createSpeciesBatch.field.batchWeightField.tip= +tuttihelp.createSpeciesBatch.field.sortedUnsortedCategoryComboBox.tip= +tuttihelp.createSpeciesBatch.field.speciesComboBox.tip= +tuttihelp.dbManager.action.closeDb.tip=Fermer la base de données en cours d'utilisation +tuttihelp.dbManager.action.exportDb.tip=Exporter la base de données au format zip +tuttihelp.dbManager.action.installDb.tip=Télécharger puis installer la base de données +tuttihelp.dbManager.action.openDb.tip=Ouvrir la base de données détectée par Tutti +tuttihelp.dbManager.action.upgradeDb.tip=Mettre à jour les référentiels si nécessaire +tuttihelp.editCatchBatch.action.cancelEditCatchBatch.tip=Réinitialiser l'édition de la capture +tuttihelp.editCatchBatch.action.computeWeights.tip=Elever les poids +tuttihelp.editCatchBatch.action.importPupitri.tip=Import Pupitri +tuttihelp.editCatchBatch.action.saveCatchBatch.tip=Sauver la capture +tuttihelp.editCatchBatch.field.benthosTotalSampleSortedWeight.tip= +tuttihelp.editCatchBatch.field.benthosTotalSortedWeight.tip= +tuttihelp.editCatchBatch.field.benthosTotalUnsortedWeight.tip= +tuttihelp.editCatchBatch.field.benthosTotalWeight.tip= +tuttihelp.editCatchBatch.field.catchTotalRejectedWeight.tip= +tuttihelp.editCatchBatch.field.catchTotalSortedWeight.tip= +tuttihelp.editCatchBatch.field.catchTotalUnsortedWeight.tip= +tuttihelp.editCatchBatch.field.catchTotalWeight.tip= +tuttihelp.editCatchBatch.field.macroWasteTotalWeight.tip= +tuttihelp.editCatchBatch.field.speciesTotalSampleSortedWeight.tip= +tuttihelp.editCatchBatch.field.speciesTotalSortedWeight.tip= +tuttihelp.editCatchBatch.field.speciesTotalUnsortedWeight.tip= +tuttihelp.editCatchBatch.field.speciesTotalWeight.tip= +tuttihelp.editCruise.action.cancelEditCruise.help=Annuler l'édition (ou la création) de la campagne +tuttihelp.editCruise.action.cancelEditCruise.tip= tuttihelp.editCruise.action.generateName.tip= -tuttihelp.editCruise.beginDateField.tip= -tuttihelp.editCruise.commentField.tip= -tuttihelp.editCruise.countryComboBox.tip= -tuttihelp.editCruise.endDateField.tip= +tuttihelp.editCruise.action.saveCruise.help=Enregistrer la campagne +tuttihelp.editCruise.action.saveCruise.tip= tuttihelp.editCruise.field.beginDate.tip= tuttihelp.editCruise.field.comment.tip= tuttihelp.editCruise.field.country.tip= @@ -616,25 +575,14 @@ tuttihelp.editCruise.field.surveyPart.tip= tuttihelp.editCruise.field.year.tip= tuttihelp.editCruise.filterVessel.tip= -tuttihelp.editCruise.gearList.tip= -tuttihelp.editCruise.generateNameAction.tip= -tuttihelp.editCruise.headOfMissionList.tip= -tuttihelp.editCruise.headOfSortRoomList.tip= tuttihelp.editCruise.list.gear.tip= tuttihelp.editCruise.list.headOfMission.tip= tuttihelp.editCruise.list.headOfSortRoom.tip= tuttihelp.editCruise.list.vessel.tip= -tuttihelp.editCruise.multirigNumberField.tip= -tuttihelp.editCruise.nameField.tip= -tuttihelp.editCruise.programComboBox.tip= -tuttihelp.editCruise.surveyPartField.tip= -tuttihelp.editCruise.vesselList.tip= -tuttihelp.editCruise.yearField.tip= tuttihelp.editFishingOperation.action.attachments.tip= -tuttihelp.editFishingOperation.action.cancel.tip= -tuttihelp.editFishingOperation.action.importCasino.tip= -tuttihelp.editFishingOperation.action.save.tip= -tuttihelp.editFishingOperation.field..tip= +tuttihelp.editFishingOperation.action.cancelEditFishingOperation.tip=Annuler la création du trait +tuttihelp.editFishingOperation.action.importCasino.tip=Import Casino +tuttihelp.editFishingOperation.action.saveEditFishingOperation.tip=Enregistrer le trait tuttihelp.editFishingOperation.field.comment.tip= tuttihelp.editFishingOperation.field.duration.tip= tuttihelp.editFishingOperation.field.fishingOperationNumber.tip= @@ -659,8 +607,91 @@ tuttihelp.editFishingOperation.field.vessel.tip= tuttihelp.editFishingOperation.gearShootingStartLongitude.tip= tuttihelp.editFishingOperation.list.recorderPerson.tip= +tuttihelp.editProgram.action.cancelEditProgram.tip=Annuler l'édition (ou la création) de la série de campagne +tuttihelp.editProgram.action.saveProgram.tip=Enregistrer la série de campagne tuttihelp.editProgram.field.comment.tip= tuttihelp.editProgram.field.name.tip= tuttihelp.editProgram.field.zone.tip= +tuttihelp.editProtocol.action.addSpeciesProtocol.tip=Ajouter une espèce au protocole +tuttihelp.editProtocol.action.cancelEditProtocol.help=Annuler l'édition (ou la création) du protocole +tuttihelp.editProtocol.action.cancelEditProtocol.tip= +tuttihelp.editProtocol.action.exportProtocolAllCaracteristic.tip=Exporter toutes les caractéristiques (sans les affecter à un écran) +tuttihelp.editProtocol.action.exportProtocolCaracteristic.tip=Exporter les caractéristiques du protocole +tuttihelp.editProtocol.action.exportProtocolSpecies.tip=Exporter les espèces du protocole +tuttihelp.editProtocol.action.importProtocolCaracteristic.tip=importer les caractéristiques dans le protocole +tuttihelp.editProtocol.action.importProtocolSpecies.tip=importer les espèces dans le protocole +tuttihelp.editProtocol.action.removeSpeciesProtocol.tip=Supprimer l'espèce +tuttihelp.editProtocol.action.saveProtocol.tip=Enregistrer le protocol +tuttihelp.editProtocol.action.selectOtherSpecies.tip=Sélectionner une autre espèce tuttihelp.editProtocol.field..tip= tuttihelp.editProtocol.field.comment.tip= +tuttihelp.editSpeciesBatch.action.createMelag.tip=Calcul des poids des lots appartenant à un MELAG +tuttihelp.editSpeciesBatch.action.removeSpeciesBatch.tip=Supprimer le lot courant (celui de la ligne sélectionnée) et tous ces fils +tuttihelp.editSpeciesBatch.action.removeSpeciesSubBatch.tip=Supprimer tous les lots fils du lot sélectionné +tuttihelp.editSpeciesBatch.action.renameSpeciesBatch.tip=Corriger l'espèce sur tout le lot sélectionné +tuttihelp.editSpeciesBatch.action.splitSpeciesBatch.tip=Catégoriser le lot courant (celui de la ligne sélectionné) +tuttihelp.editSpeciesBatch.createSpeciesBatch.tip= +tuttihelp.editSpeciesBatch.field.speciesTotalInertWeight.tip= +tuttihelp.editSpeciesBatch.field.speciesTotalLivingNotItemizedWeight.tip= +tuttihelp.editSpeciesBatch.field.speciesTotalSampleSortedWeight.tip= +tuttihelp.editSpeciesBatch.field.speciesTotalSortedWeight.tip= +tuttihelp.editSpeciesBatch.field.speciesTotalUnsortedWeight.tip= +tuttihelp.editSpeciesBatch.field.speciesTotalWeight.tip= +tuttihelp.editSpeciesBatch.filterSpeciesBatch.mode.all.tip=Pas de filtre (tous les lots sont visibles) +tuttihelp.editSpeciesBatch.filterSpeciesBatch.mode.leaf.tip=Voir uniquement les lots *feuilles* +tuttihelp.editSpeciesBatch.filterSpeciesBatch.mode.root.tip=Voir uniquement les lots *parents* +tuttihelp.editSpeciesBatch.filterSpeciesBatch.tip=Pour filtrer les lots +tuttihelp.editSpeciesBatch.renameSpeciesBatch.tip= +tuttihelp.fishingOperations.action.newFishingOperation.tip=Créer une nouvelle opération de pêche +tuttihelp.main.action.about.tip=À Propos +tuttihelp.main.action.actions.tip=Actions +tuttihelp.main.action.administration.tip=Administrer Tutti +tuttihelp.main.action.configuration.tip=Configurer Tutti +tuttihelp.main.action.editCatches.tip= +tuttihelp.main.action.editProgram.tip= +tuttihelp.main.action.editSelectedCruise.tip=Éditer la campagne sélectionnée +tuttihelp.main.action.editSelectedProtocol.tip=Éditer le protocole sélectionné +tuttihelp.main.action.exit.tip=Quitter l'application +tuttihelp.main.action.file.tip=Fichier +tuttihelp.main.action.help.tip=Aide +tuttihelp.main.action.importTemporaryReferential.tip=Importer des référentiels temporaires +tuttihelp.main.action.manageDb.tip=Gérer la base de données utilisée par Tutti +tuttihelp.main.action.selectCruise.tip=Sélectionner la campagne à utiliser +tuttihelp.main.action.showHelp.tip= +tuttihelp.main.action.site.tip=Accéder au site du projet Tutti +tuttihelp.main.action.updateApplication.tip=Vérifier les mises à jour logicielles +tuttihelp.main.action.validateCatches.tip= +tuttihelp.manageTemporaryReferential.action.exportTemporaryGearExample.tip=Exporter un exemple de référentiel Engin +tuttihelp.manageTemporaryReferential.action.exportTemporaryPersonExample.tip=Exporter un exemple de référentiel Personne +tuttihelp.manageTemporaryReferential.action.exportTemporarySpeciesExample.tip=Exporter un exemple de référentiel Espèces +tuttihelp.manageTemporaryReferential.action.exportTemporaryVesselExample.tip=Exporter un exemple de référentiel Navire +tuttihelp.manageTemporaryReferential.action.importTemporaryGear.tip=Importer un référentiel temporaire d'engins +tuttihelp.manageTemporaryReferential.action.importTemporaryPerson.tip=Importer un référentiel temporaire de personnes +tuttihelp.manageTemporaryReferential.action.importTemporarySpecies.tip=Importer un référentiel temporaire d'espèces +tuttihelp.manageTemporaryReferential.action.importTemporaryVessel.tip=Importer un référentiel temporaire de navires +tuttihelp.manageTemporaryReferential.label.referential.gear.tip= +tuttihelp.manageTemporaryReferential.label.referential.person.tip= +tuttihelp.manageTemporaryReferential.label.referential.species.tip= +tuttihelp.manageTemporaryReferential.label.referential.vessel.tip= +tuttihelp.menu.action.help.tip= +tuttihelp.selectCruise.action.cloneProtocol.tip=Dupliquer le protocole sélectionné +tuttihelp.selectCruise.action.deleteProtocol.tip=Supprimer le protocole sélectioné +tuttihelp.selectCruise.action.editCatches.tip=Saisir des captures +tuttihelp.selectCruise.action.editCruise.tip=Éditer la campagne sélectionnée +tuttihelp.selectCruise.action.editProgram.tip=Éditer le programme sélectionné +tuttihelp.selectCruise.action.editProtocol.tip=Éditer le protocol sélectionné +tuttihelp.selectCruise.action.exportProtocol.tip=Exporter le protocole sélectionné +tuttihelp.selectCruise.action.importProtocol.tip=Importer un protocole +tuttihelp.selectCruise.action.newCruise.tip=Créer une nouvelle campagne +tuttihelp.selectCruise.action.newProgram.tip=Créer une nouvelle série de campagne +tuttihelp.selectCruise.action.newProtocol.tip=Créer un nouveau protocole +tuttihelp.selectCruise.action.validateCatches.tip=Valider les captures +tuttihelp.selectCruise.field.cruise.tip= +tuttihelp.selectCruise.field.program.tip= +tuttihelp.selectCruise.field.protocol.tip= +tuttihelp.splitSpeciesBatch.action.cancel.tip= +tuttihelp.splitSpeciesBatch.action.save.tip= +tuttihelp.splitSpeciesBatch.field.batchWeightField.tip= +tuttihelp.splitSpeciesBatch.field.categoryField.tip= +tuttihelp.splitSpeciesBatch.field.sampleWeightField.tip= +tuttihelp.splitSpeciesBatch.field.speciesField.tip=
participants (1)
-
tchemit@users.forge.codelutin.com