branch develop updated (83788bf -> 72b17d4)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository tutti. See http://git.codelutin.com/tutti.git from 83788bf fix typo on readme file new 72b17d4 fixes #6793: [Modèle de catégorisation] Erreur lors de la suppression d'une catégorie - use SimpleAction instead of code in handlers - fix some issues with ErrorHandler (introduced by the refactor) The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit 72b17d41abc159800890d0c3050c94920ca25cef Author: Tony CHEMIT <chemit@codelutin.com> Date: Mon Mar 9 11:50:33 2015 +0100 fixes #6793: [Modèle de catégorisation] Erreur lors de la suppression d'une catégorie - use SimpleAction instead of code in handlers - fix some issues with ErrorHandler (introduced by the refactor) Summary of changes: .../filtered-resources/tutti-help-fr.properties | 27 +- .../java/fr/ifremer/tutti/ui/swing/RunTutti.java | 6 +- .../ifremer/tutti/ui/swing/TuttiActionFactory.java | 27 +- .../fr/ifremer/tutti/ui/swing/TuttiUIContext.java | 12 +- .../fr/ifremer/tutti/ui/swing/content/MainUI.css | 49 +-- .../fr/ifremer/tutti/ui/swing/content/MainUI.jaxx | 7 +- .../tutti/ui/swing/content/MainUIHandler.java | 65 ++-- .../actions}/AbstractChangeLocaleAction.java | 18 +- .../actions}/AbstractChangeScreenAction.java | 2 +- .../actions}/AbstractMainUITuttiAction.java | 5 +- .../actions}/ChangeToLocaleFRAction.java | 2 +- .../actions}/ChangeToLocaleUKAction.java | 2 +- .../actions}/CloseApplicationAction.java | 2 +- .../actions}/ConnectIchtyometerAction.java | 2 +- .../actions}/DisconnectIchtyometerAction.java | 2 +- .../EditCatchesForSelectedCruiseAction.java} | 8 +- .../actions}/EditSelectedCruiseAction.java | 2 +- .../actions}/EditSelectedProgramAction.java | 2 +- .../actions}/EditSelectedProtocolAction.java | 2 +- .../actions}/GoToPreviousScreenAction.java | 3 +- .../ui/swing/content/actions/GotoSiteAction.java | 43 +++ .../actions/OpenDbScreenAction.java} | 6 +- .../actions/OpenHomeScreenAction.java} | 6 +- .../actions/OpenReportScreenAction.java} | 8 +- .../OpenSampleCategoryModelScreenAction.java} | 6 +- .../OpenTemporaryReferentialScreenAction.java} | 6 +- .../actions}/ShowAboutAction.java | 8 +- .../actions}/ShowConfigAction.java | 2 +- .../ui/swing/content/actions/ShowHelpAction.java | 26 ++ .../{action => content/actions}/StartAction.java | 9 +- .../actions/ValidateSelectedCruiseAction.java} | 8 +- .../content/category/EditSampleCategoryModelUI.css | 7 +- .../category/EditSampleCategoryModelUI.jaxx | 11 +- .../category/EditSampleCategoryModelUIHandler.java | 141 +++++---- .../actions/AddSampleCategoryRowAction.java | 63 ++++ .../actions/ExportSampleCategoryModelAction.java | 6 +- .../actions/MoveDownSampleCategoryRowAction.java | 34 +++ .../actions/MoveUpSampleCategoryRowAction.java | 35 +++ .../actions/RemoveSampleCategoryRowAction.java | 51 ++++ .../actions/SaveSampleCategoryModelAction.java | 4 +- .../swing/content/config/TuttiConfigUIHandler.java | 4 +- .../config/actions}/ReloadTuttiAction.java | 3 +- .../tutti/ui/swing/content/cruise/EditCruiseUI.css | 27 +- .../ui/swing/content/cruise/EditCruiseUI.jaxx | 15 +- .../swing/content/cruise/EditCruiseUIHandler.java | 12 +- .../content/cruise/GearCaracteristicsEditorUI.css | 4 + .../content/cruise/GearCaracteristicsEditorUI.jaxx | 9 +- .../cruise/GearCaracteristicsEditorUIHandler.java | 145 +++++---- .../actions}/EditGearCaracteristicsAction.java | 5 +- .../actions/GearCaracteristicAddRowAction.java | 52 ++++ .../actions/GearCaracteristicCancelAction.java | 36 +++ .../actions/GearCaracteristicRemoveRowAction.java | 63 ++++ .../actions/GearCaracteristicSaveAction.java | 48 +++ .../cruise/actions/GenerateCampaignNameAction.java | 39 +++ .../cruise/actions}/ResetCruiseAction.java | 5 +- .../cruise/actions}/SaveCruiseAction.java | 5 +- .../actions}/ViewGearCaracteristicsAction.java | 5 +- .../tutti/ui/swing/content/db/DbManagerUI.css | 10 +- .../db/actions}/CloseDbAction.java | 3 +- .../db/actions}/ExportAndCleanDbAction.java | 3 +- .../db/actions}/ExportDbAction.java | 3 +- .../db/actions}/ImportDbAction.java | 6 +- .../db/actions}/ImportOrReimportDbAction.java | 3 +- .../db/actions}/InstallDbAction.java | 3 +- .../db/actions}/InstallOrReinstallDbAction.java | 3 +- .../db/actions}/OpenDbAction.java | 3 +- .../db/actions}/ReimportDbAction.java | 3 +- .../db/actions}/ReinstallDbAction.java | 3 +- .../db/actions}/UpdateDbAction.java | 3 +- .../genericformat/GenericFormatImportUI.css | 2 +- .../actions/GenericFormatImportAction.java | 4 +- .../actions/GenericFormatValidateAction.java | 4 +- .../OpenGenericFormatImportReportAction.java | 4 +- .../OpenGenericFormatValidateReportAction.java | 4 +- .../SaveGenericFormatImportReportAction.java | 4 +- .../SaveGenericFormatValidateReportAction.java | 4 +- .../tutti/ui/swing/content/home/SelectCruiseUI.css | 36 +-- .../home/actions}/CloneProtocolAction.java | 3 +- .../home/actions}/DeleteProtocolAction.java | 5 +- .../home/actions}/EditCatchesAction.java | 3 +- .../home/actions}/EditCruiseAction.java | 3 +- .../home/actions}/EditProgramAction.java | 3 +- .../home/actions}/EditProtocolAction.java | 3 +- .../actions}/ExportCruiseForSumatraAction.java | 3 +- .../actions}/ExportGenericFormatCruiseAction.java | 5 +- .../ExportGenericFormatProgramCruisesAction.java | 5 +- .../home/actions}/ExportProtocolAction.java | 5 +- .../ImportGenericFormatProgramCruisesAction.java | 5 +- .../home/actions}/ImportProtocolAction.java | 3 +- .../home/actions}/NewCruiseAction.java | 3 +- .../home/actions}/NewProgramAction.java | 3 +- .../home/actions}/NewProtocolAction.java | 3 +- .../actions}/OpenGenericFormatImportScreen.java | 3 +- .../home/actions}/SendCruiseReportAction.java | 3 +- .../SpeciesToConfirmReportForCruiseAction.java | 3 +- .../home/actions}/ValidateCatchesAction.java | 3 +- .../content/operation/EditFishingOperationUI.css | 10 +- .../operation/EditFishingOperationUIHandler.java | 2 +- .../content/operation/FishingOperationsUI.css | 4 +- .../operation/FishingOperationsUIHandler.java | 2 +- .../content/operation/catches/EditCatchesUI.css | 16 +- .../operation/catches/EditCatchesUIHandler.java | 132 ++++---- .../operation/catches/MultiPostImportLogDialog.css | 1 + .../catches/accidental/AccidentalBatchUI.css | 7 +- .../catches/accidental/AccidentalBatchUI.jaxx | 3 +- .../accidental/AccidentalBatchUIHandler.java | 10 - .../actions}/ExportMultiPostAccidentalAction.java | 3 +- .../actions}/ImportMultiPostAccidentalAction.java | 3 +- .../actions/OpenCreateAccidentalBatchUIAction.java | 33 ++ .../actions}/RemoveAccidentalBatchAction.java | 5 +- .../accidental/create/CreateAccidentalBatchUI.css | 3 + .../accidental/create/CreateAccidentalBatchUI.jaxx | 6 +- .../create/CreateAccidentalBatchUIHandler.java | 44 +-- .../CreateAccidentalBatchAndCloseAction.java | 40 +++ .../CreateAccidentalBatchAndContinueAction.java | 42 +++ .../actions/CreateAccidentalBatchCancelAction.java | 26 ++ .../actions}/CancelEditCatchBatchAction.java | 6 +- .../catches/actions}/CleanBatchWeightsAction.java | 5 +- .../actions}/ComputeBatchWeightsAction.java | 5 +- .../ExportFishingOperationForSumatraAction.java | 5 +- .../ExportFishingOperationReportAction.java | 5 +- .../actions}/ExportMultiPostActionSupport.java | 5 +- .../actions}/ExportMultiPostCatchAction.java | 2 +- .../actions}/ImportMultiPostActionSupport.java | 6 +- .../actions}/ImportMultiPostCatchAction.java | 2 +- .../catches/actions}/SaveCatchBatchAction.java | 5 +- .../operation/catches/benthos/BenthosBatchUI.css | 17 +- .../operation/catches/benthos/BenthosBatchUI.jaxx | 15 +- .../catches/benthos/BenthosBatchUIHandler.java | 338 +++------------------ .../ChangeBenthosBatchSampleCategoryAction.java | 181 +++++++++++ .../benthos/actions}/CreateBenthosMelagAction.java | 5 +- .../actions}/ExportMultiPostBenthosAction.java | 3 +- .../actions}/ImportMultiPostBenthosAction.java | 3 +- .../OpenAddBenthosBatchSampleCategoryUIAction.java | 83 +++++ .../actions/OpenCreateBenthosBatchUIAction.java | 33 ++ .../OpenEditBenthosBatchFrequencyUIAction.java | 51 ++++ .../actions/OpenSplitBenthosBatchUIAction.java | 98 ++++++ .../benthos/actions}/RemoveBenthosBatchAction.java | 5 +- .../actions}/RemoveBenthosSubBatchAction.java | 5 +- .../benthos/actions}/RenameBenthosBatchAction.java | 5 +- .../benthos/create/CreateBenthosBatchUI.css | 5 +- .../benthos/create/CreateBenthosBatchUI.jaxx | 6 +- .../create/CreateBenthosBatchUIHandler.java | 48 +-- .../actions/CreateBenthosBatchAndCloseAction.java | 40 +++ .../CreateBenthosBatchAndContinueAction.java | 43 +++ .../actions/CreateBenthosBatchCancelAction.java | 35 +++ .../SelectSpeciesForBenthosBatchAction.java | 5 +- .../catches/benthos/split/SplitBenthosBatchUI.css | 2 + .../catches/benthos/split/SplitBenthosBatchUI.jaxx | 4 +- .../benthos/split/SplitBenthosBatchUIHandler.java | 44 +-- .../actions/SplitBenthosBatchCancelAction.java | 34 +++ .../split/actions/SplitBenthosBatchSaveAction.java | 55 ++++ .../IndividualObservationBatchUI.css | 9 +- .../IndividualObservationBatchUI.jaxx | 7 +- .../IndividualObservationBatchUIHandler.java | 10 - ...ExportMultiPostIndividualObservationAction.java | 3 +- ...ImportMultiPostIndividualObservationAction.java | 3 +- ...enCreateIndividualObservationBatchUIAction.java | 38 +++ .../RemoveAllIndividualObservationBatchAction.java | 5 +- .../RemoveIndividualObservationBatchAction.java | 5 +- ...SpeciesForIndividualObservationBatchAction.java | 5 +- .../create/CreateIndividualObservationBatchUI.css | 5 +- .../create/CreateIndividualObservationBatchUI.jaxx | 6 +- .../CreateIndividualObservationBatchUIHandler.java | 47 +-- ...teIndividualObservationBatchAndCloseAction.java | 40 +++ ...ndividualObservationBatchAndContinueAction.java | 49 +++ ...eateIndividualObservationBatchCancelAction.java | 35 +++ .../catches/marinelitter/MarineLitterBatchUI.css | 7 +- .../catches/marinelitter/MarineLitterBatchUI.jaxx | 8 +- .../marinelitter/MarineLitterBatchUIHandler.java | 12 - .../ExportMultiPostMarineLitterAction.java | 3 +- .../ImportMultiPostMarineLitterAction.java | 3 +- .../OpenCreateMarineLitterBatchUIAction.java | 38 +++ .../actions}/RemoveMarineLitterBatchAction.java | 6 +- .../create/CreateMarineLitterBatchUI.css | 3 + .../create/CreateMarineLitterBatchUI.jaxx | 6 +- .../create/CreateMarineLitterBatchUIHandler.java | 43 +-- ...CreateMarineLitterBatchBatchAndCloseAction.java | 40 +++ ...ateMarineLitterBatchBatchAndContinueAction.java | 46 +++ .../CreateMarineLitterBatchBatchCancelAction.java | 36 +++ .../operation/catches/species/SpeciesBatchUI.css | 23 +- .../operation/catches/species/SpeciesBatchUI.jaxx | 15 +- .../catches/species/SpeciesBatchUIHandler.java | 266 +--------------- .../ChangeSpeciesBatchSampleCategoryAction.java | 178 +++++++++++ .../species/actions}/CreateSpeciesMelagAction.java | 5 +- .../actions}/ExportMultiPostSpeciesAction.java | 3 +- .../species/actions}/ImportBigfinAction.java | 6 +- .../actions}/ImportMultiPostSpeciesAction.java | 3 +- .../species/actions}/ImportPsionAction.java | 6 +- .../species/actions}/ImportPupitriAction.java | 6 +- .../OpenAddSpeciesBatchSampleCategoryUIAction.java | 82 +++++ .../actions/OpenCreateSpeciesBatchUIAction.java | 38 +++ .../OpenEditSpeciesBatchFrequencyUIAction.java | 51 ++++ .../actions/OpenSplitSpeciesBatchUIAction.java | 95 ++++++ .../species/actions}/RemoveSpeciesBatchAction.java | 5 +- .../actions}/RemoveSpeciesSubBatchAction.java | 5 +- .../species/actions}/RenameSpeciesBatchAction.java | 5 +- .../species/create/CreateSpeciesBatchUI.css | 5 +- .../species/create/CreateSpeciesBatchUI.jaxx | 6 +- .../create/CreateSpeciesBatchUIHandler.java | 49 +-- .../actions/CreateSpeciesBatchAndCloseAction.java | 40 +++ .../CreateSpeciesBatchAndContinueAction.java | 43 +++ .../actions/CreateSpeciesBatchCancelAction.java | 35 +++ .../SelectSpeciesForSpeciesBatchAction.java | 5 +- .../catches/species/split/SplitSpeciesBatchUI.css | 2 + .../catches/species/split/SplitSpeciesBatchUI.jaxx | 4 +- .../species/split/SplitSpeciesBatchUIHandler.java | 44 +-- .../actions/SplitSpeciesBatchCancelAction.java | 34 +++ .../split/actions/SplitSpeciesBatchSaveAction.java | 55 ++++ .../operation/fishing/GearUseFeatureTabUI.css | 2 + .../operation/fishing/GearUseFeatureTabUI.jaxx | 5 +- .../operation/fishing/VesselUseFeatureTabUI.css | 2 + .../operation/fishing/VesselUseFeatureTabUI.jaxx | 5 +- .../actions}/CancelEditFishingOperationAction.java | 5 +- .../actions}/DeleteFishingOperationAction.java | 5 +- .../actions}/EditFishingOperationAction.java | 10 +- .../actions/GearUseFeatureAddRowAction.java | 27 ++ .../actions/GearUseFeatureRemoveRowAction.java | 27 ++ ...perationCaracteristicsFromColumnFileAction.java | 6 +- .../actions}/NewFishingOperationAction.java | 2 +- .../actions}/SaveFishingOperationAction.java | 5 +- .../actions/VesselUseFeatureAddRowAction.java | 27 ++ .../actions/VesselUseFeatureRemoveRowAction.java | 27 ++ .../ui/swing/content/program/EditProgramUI.css | 6 +- .../program/actions}/ResetProgramAction.java | 5 +- .../program/actions}/SaveProgramAction.java | 5 +- .../ui/swing/content/protocol/EditProtocolUI.css | 38 +-- .../content/protocol/EditProtocolUIHandler.java | 54 ++-- .../actions}/AddBenthosProtocolAction.java | 5 +- .../actions}/AddCaracteristicMappingAction.java | 5 +- .../actions}/AddSpeciesProtocolAction.java | 5 +- .../actions}/ExportAllCaracteristicAction.java | 5 +- .../actions}/ExportProtocolBenthosAction.java | 5 +- .../ExportProtocolCaracteristicAction.java | 5 +- .../actions}/ExportProtocolSpeciesAction.java | 5 +- .../protocol/actions}/ExportPupitriAction.java | 5 +- .../actions}/ImportProtocolBenthosAction.java | 5 +- .../ImportProtocolCaracteristicAction.java | 5 +- .../actions}/ImportProtocolSpeciesAction.java | 5 +- .../actions}/LoadProtocolImportColumnsAction.java | 5 +- .../actions}/RemoveBenthosProtocolAction.java | 5 +- .../actions}/RemoveCaracteristicMappingAction.java | 5 +- .../actions}/RemoveSpeciesProtocolAction.java | 5 +- .../protocol/actions}/SaveProtocolAction.java | 5 +- .../actions}/SelectOtherBenthosAction.java | 10 +- .../actions}/SelectOtherSpeciesAction.java | 8 +- .../referential/ManageTemporaryReferentialUI.css | 32 +- .../AbstractOpenReplaceTemporaryUIAction.java | 5 +- .../ExportExistingTemporaryGearAction.java | 5 +- .../ExportExistingTemporaryPersonAction.java | 5 +- .../ExportExistingTemporarySpeciesAction.java | 5 +- .../ExportExistingTemporaryVesselAction.java | 5 +- .../actions}/ExportTemporaryGearExampleAction.java | 5 +- .../ExportTemporaryPersonExampleAction.java | 5 +- .../ExportTemporarySpeciesExampleAction.java | 5 +- .../ExportTemporaryVesselExampleAction.java | 5 +- .../actions}/ImportTemporaryGearAction.java | 5 +- .../actions}/ImportTemporaryPersonAction.java | 5 +- .../actions}/ImportTemporarySpeciesAction.java | 5 +- .../actions}/ImportTemporaryVesselAction.java | 5 +- .../actions}/OpenReplaceTemporaryGearUIAction.java | 2 +- .../OpenReplaceTemporaryPersonUIAction.java | 2 +- .../OpenReplaceTemporarySpeciesUIAction.java | 2 +- .../OpenReplaceTemporaryVesselUIAction.java | 2 +- .../referential/replace/ReplaceTemporaryGearUI.css | 2 +- .../replace/ReplaceTemporaryPersonUI.css | 2 +- .../replace/ReplaceTemporarySpeciesUI.css | 2 +- .../replace/ReplaceTemporaryVesselUI.css | 2 +- .../actions}/AbstractReplaceTemporaryUIAction.java | 5 +- .../actions}/ReplaceTemporaryGearAction.java | 2 +- .../actions}/ReplaceTemporaryPersonAction.java | 2 +- .../actions}/ReplaceTemporarySpeciesAction.java | 2 +- .../actions}/ReplaceTemporaryVesselAction.java | 2 +- .../tutti/ui/swing/content/report/ReportUI.css | 5 +- .../tutti/ui/swing/content/report/ReportUI.jaxx | 3 +- .../report/actions}/GenerateReportAction.java | 5 +- .../content/report/actions/ShowReportAction.java | 34 +++ .../swing/content/validation/ValidateCruiseUI.css | 6 +- .../validation/ValidateCruiseUIHandler.java | 4 +- .../actions}/EditCruiseInValidationUIAction.java | 5 +- .../EditFishingOperationInValidationUIAction.java | 5 +- .../ExportCruiseValidationMessagesAction.java | 5 +- .../ExportOperationValidationMessagesAction.java | 5 +- .../actions}/SaveCruiseToReadyToSynchAction.java | 5 +- .../update/TuttiApplicationUpdaterCallBack.java | 4 +- .../ui/swing/update/TuttiDbUpdaterCallBack.java | 4 +- .../swing/update/TuttiReportUpdaterCallBack.java | 4 +- .../swing/update/TuttiUpdaterCallBackSupport.java | 6 +- .../actions}/UpdateApplicationAction.java | 7 +- .../actions}/UpdateReportAction.java | 7 +- .../ui/swing/util/AbstractTuttiUIHandler.java | 60 ++-- .../tutti/ui/swing/util/TuttiExceptionHandler.java | 26 +- .../actions/LongActionSupport.java} | 6 +- .../ui/swing/util/actions/SimpleActionSupport.java | 33 ++ .../swing/util/attachment/AttachmentEditorUI.css | 40 +-- .../swing/util/attachment/AttachmentEditorUI.jaxx | 5 +- .../util/attachment/AttachmentEditorUIHandler.java | 143 ++------- .../ui/swing/util/attachment/AttachmentItem.css | 46 ++- .../ui/swing/util/attachment/AttachmentItem.jaxx | 27 +- .../util/attachment/AttachmentItemHandler.java | 45 +++ .../swing/util/attachment/AttachmentItemModel.java | 71 +++++ .../attachment/actions/AddAttachmentAction.java | 68 +++++ .../attachment/actions/HideAttachmentUIAction.java | 39 +++ .../attachment/actions/OpenAttachmentAction.java | 50 +++ .../attachment/actions/RemoveAttachmentAction.java | 66 ++++ .../{ => actions}/SaveAttachmentAction.java | 41 ++- .../attachment/actions/ShowAttachmentUIAction.java | 26 ++ .../ui/swing/util/auth/AuthenticationInfo.java | 2 +- .../ifremer/tutti/ui/swing/util/auth/LoginUI.css | 42 ++- .../ifremer/tutti/ui/swing/util/auth/LoginUI.jaxx | 4 +- .../tutti/ui/swing/util/auth/LoginUIHandler.java | 27 +- .../swing/util/auth/actions/LoginAcceptAction.java | 38 +++ .../swing/util/auth/actions/LoginCancelAction.java | 35 +++ .../caracteristics/CaracteristicMapEditorUI.css | 93 ++---- .../caracteristics/CaracteristicMapEditorUI.jaxx | 9 +- .../CaracteristicMapEditorUIHandler.java | 142 ++++----- .../actions/CaracteristicEditorAddRowAction.java | 60 ++++ .../actions/CaracteristicEditorCancelAction.java | 35 +++ .../CaracteristicEditorRemoveRowAction.java | 68 +++++ .../actions/CaracteristicEditorSaveAction.java | 37 +++ .../tutti/ui/swing/util/catches/EnterWeightUI.css | 2 + .../swing/util/catches/EnterWeightUIHandler.java | 44 +-- .../catches/actions/EnterWeightCancelAction.java | 38 +++ .../catches/actions/EnterWeightValidateAction.java | 35 +++ .../ui/swing/util/species/EnterMelagWeightUI.css | 2 + .../ui/swing/util/species/EnterMelagWeightUI.jaxx | 4 +- .../ui/swing/util/species/SelectSpeciesUI.css | 51 ++-- .../ui/swing/util/species/SelectSpeciesUI.jaxx | 4 +- .../actions/EnterMelagWeightCancelAction.java | 37 +++ .../actions/EnterMelagWeightValidateAction.java | 36 +++ .../species/actions/SelectSpeciesCancelAction.java | 36 +++ .../actions/SelectSpeciesValidateAction.java | 35 +++ .../resources/i18n/tutti-ui-swing_en_GB.properties | 2 + .../resources/i18n/tutti-ui-swing_fr_FR.properties | 3 +- 334 files changed, 4706 insertions(+), 2218 deletions(-) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/actions}/AbstractChangeLocaleAction.java (72%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/actions}/AbstractChangeScreenAction.java (98%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/actions}/AbstractMainUITuttiAction.java (83%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/actions}/ChangeToLocaleFRAction.java (95%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/actions}/ChangeToLocaleUKAction.java (95%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/actions}/CloseApplicationAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/actions}/ConnectIchtyometerAction.java (98%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/actions}/DisconnectIchtyometerAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action/EditSelectedCruiseCatchesAction.java => content/actions/EditCatchesForSelectedCruiseAction.java} (85%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/actions}/EditSelectedCruiseAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/actions}/EditSelectedProgramAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/actions}/EditSelectedProtocolAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/actions}/GoToPreviousScreenAction.java (90%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/GotoSiteAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action/ManageDbAction.java => content/actions/OpenDbScreenAction.java} (85%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action/SelectCruiseAction.java => content/actions/OpenHomeScreenAction.java} (85%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action/ShowReportAction.java => content/actions/OpenReportScreenAction.java} (82%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action/EditSampleCategoryModelAction.java => content/actions/OpenSampleCategoryModelScreenAction.java} (88%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action/ImportTemporaryReferentialAction.java => content/actions/OpenTemporaryReferentialScreenAction.java} (90%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/actions}/ShowAboutAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/actions}/ShowConfigAction.java (95%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ShowHelpAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/actions}/StartAction.java (91%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action/ValidateSelectedCruiseCatchesAction.java => content/actions/ValidateSelectedCruiseAction.java} (86%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/AddSampleCategoryRowAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/MoveDownSampleCategoryRowAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/MoveUpSampleCategoryRowAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/RemoveSampleCategoryRowAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/config/actions}/ReloadTuttiAction.java (91%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/cruise/actions}/EditGearCaracteristicsAction.java (92%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GearCaracteristicAddRowAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GearCaracteristicCancelAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GearCaracteristicRemoveRowAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GearCaracteristicSaveAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GenerateCampaignNameAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/cruise/actions}/ResetCruiseAction.java (88%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/cruise/actions}/SaveCruiseAction.java (96%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/cruise/actions}/ViewGearCaracteristicsAction.java (92%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/db/actions}/CloseDbAction.java (94%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/db/actions}/ExportAndCleanDbAction.java (96%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/db/actions}/ExportDbAction.java (96%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/db/actions}/ImportDbAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/db/actions}/ImportOrReimportDbAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/db/actions}/InstallDbAction.java (96%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/db/actions}/InstallOrReinstallDbAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/db/actions}/OpenDbAction.java (99%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/db/actions}/ReimportDbAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/db/actions}/ReinstallDbAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/db/actions}/UpdateDbAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/CloneProtocolAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/DeleteProtocolAction.java (92%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/EditCatchesAction.java (95%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/EditCruiseAction.java (92%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/EditProgramAction.java (92%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/EditProtocolAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/ExportCruiseForSumatraAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/ExportGenericFormatCruiseAction.java (94%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/ExportGenericFormatProgramCruisesAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/ExportProtocolAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/ImportGenericFormatProgramCruisesAction.java (94%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/ImportProtocolAction.java (98%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/NewCruiseAction.java (91%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/NewProgramAction.java (91%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/NewProtocolAction.java (90%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/OpenGenericFormatImportScreen.java (94%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/SendCruiseReportAction.java (96%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/SpeciesToConfirmReportForCruiseAction.java (96%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/home/actions}/ValidateCatchesAction.java (94%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/accidental/actions}/ExportMultiPostAccidentalAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/accidental/actions}/ImportMultiPostAccidentalAction.java (93%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/actions/OpenCreateAccidentalBatchUIAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/accidental/actions}/RemoveAccidentalBatchAction.java (93%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/actions/CreateAccidentalBatchAndCloseAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/actions/CreateAccidentalBatchAndContinueAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/actions/CreateAccidentalBatchCancelAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/actions}/CancelEditCatchBatchAction.java (88%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/actions}/CleanBatchWeightsAction.java (94%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/actions}/ComputeBatchWeightsAction.java (98%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/actions}/ExportFishingOperationForSumatraAction.java (95%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/actions}/ExportFishingOperationReportAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/actions}/ExportMultiPostActionSupport.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/actions}/ExportMultiPostCatchAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/actions}/ImportMultiPostActionSupport.java (96%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/actions}/ImportMultiPostCatchAction.java (98%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/actions}/SaveCatchBatchAction.java (92%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/ChangeBenthosBatchSampleCategoryAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/benthos/actions}/CreateBenthosMelagAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/benthos/actions}/ExportMultiPostBenthosAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/benthos/actions}/ImportMultiPostBenthosAction.java (96%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/OpenAddBenthosBatchSampleCategoryUIAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/OpenCreateBenthosBatchUIAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/OpenEditBenthosBatchFrequencyUIAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/OpenSplitBenthosBatchUIAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/benthos/actions}/RemoveBenthosBatchAction.java (94%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/benthos/actions}/RemoveBenthosSubBatchAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/benthos/actions}/RenameBenthosBatchAction.java (94%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/CreateBenthosBatchAndCloseAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/CreateBenthosBatchAndContinueAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/CreateBenthosBatchCancelAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/benthos/create/actions}/SelectSpeciesForBenthosBatchAction.java (92%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/actions/SplitBenthosBatchCancelAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/actions/SplitBenthosBatchSaveAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/individualobservation/actions}/ExportMultiPostIndividualObservationAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/individualobservation/actions}/ImportMultiPostIndividualObservationAction.java (93%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/OpenCreateIndividualObservationBatchUIAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/individualobservation/actions}/RemoveAllIndividualObservationBatchAction.java (94%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/individualobservation/actions}/RemoveIndividualObservationBatchAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/individualobservation/actions}/SelectSpeciesForIndividualObservationBatchAction.java (94%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/actions/CreateIndividualObservationBatchAndCloseAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/actions/CreateIndividualObservationBatchAndContinueAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/actions/CreateIndividualObservationBatchCancelAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/marinelitter/actions}/ExportMultiPostMarineLitterAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/marinelitter/actions}/ImportMultiPostMarineLitterAction.java (95%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/OpenCreateMarineLitterBatchUIAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/marinelitter/actions}/RemoveMarineLitterBatchAction.java (91%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/actions/CreateMarineLitterBatchBatchAndCloseAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/actions/CreateMarineLitterBatchBatchAndContinueAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/actions/CreateMarineLitterBatchBatchCancelAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ChangeSpeciesBatchSampleCategoryAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/species/actions}/CreateSpeciesMelagAction.java (96%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/species/actions}/ExportMultiPostSpeciesAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/species/actions}/ImportBigfinAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/species/actions}/ImportMultiPostSpeciesAction.java (96%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/species/actions}/ImportPsionAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/species/actions}/ImportPupitriAction.java (96%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/OpenAddSpeciesBatchSampleCategoryUIAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/OpenCreateSpeciesBatchUIAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/OpenEditSpeciesBatchFrequencyUIAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/OpenSplitSpeciesBatchUIAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/species/actions}/RemoveSpeciesBatchAction.java (94%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/species/actions}/RemoveSpeciesSubBatchAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/species/actions}/RenameSpeciesBatchAction.java (94%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/CreateSpeciesBatchAndCloseAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/CreateSpeciesBatchAndContinueAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/CreateSpeciesBatchCancelAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/catches/species/create/actions}/SelectSpeciesForSpeciesBatchAction.java (92%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/actions/SplitSpeciesBatchCancelAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/actions/SplitSpeciesBatchSaveAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/fishing/actions}/CancelEditFishingOperationAction.java (92%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/fishing/actions}/DeleteFishingOperationAction.java (91%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/fishing/actions}/EditFishingOperationAction.java (98%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/GearUseFeatureAddRowAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/GearUseFeatureRemoveRowAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/fishing/actions}/ImportFishingOperationCaracteristicsFromColumnFileAction.java (94%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/fishing/actions}/NewFishingOperationAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/operation/fishing/actions}/SaveFishingOperationAction.java (95%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/VesselUseFeatureAddRowAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/VesselUseFeatureRemoveRowAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/program/actions}/ResetProgramAction.java (87%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/program/actions}/SaveProgramAction.java (90%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/AddBenthosProtocolAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/AddCaracteristicMappingAction.java (92%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/AddSpeciesProtocolAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/ExportAllCaracteristicAction.java (91%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/ExportProtocolBenthosAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/ExportProtocolCaracteristicAction.java (92%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/ExportProtocolSpeciesAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/ExportPupitriAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/ImportProtocolBenthosAction.java (95%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/ImportProtocolCaracteristicAction.java (92%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/ImportProtocolSpeciesAction.java (95%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/LoadProtocolImportColumnsAction.java (90%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/RemoveBenthosProtocolAction.java (94%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/RemoveCaracteristicMappingAction.java (93%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/RemoveSpeciesProtocolAction.java (94%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/SaveProtocolAction.java (95%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/SelectOtherBenthosAction.java (85%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/protocol/actions}/SelectOtherSpeciesAction.java (85%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/AbstractOpenReplaceTemporaryUIAction.java (95%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/ExportExistingTemporaryGearAction.java (91%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/ExportExistingTemporaryPersonAction.java (91%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/ExportExistingTemporarySpeciesAction.java (91%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/ExportExistingTemporaryVesselAction.java (91%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/ExportTemporaryGearExampleAction.java (90%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/ExportTemporaryPersonExampleAction.java (90%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/ExportTemporarySpeciesExampleAction.java (90%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/ExportTemporaryVesselExampleAction.java (90%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/ImportTemporaryGearAction.java (92%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/ImportTemporaryPersonAction.java (92%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/ImportTemporarySpeciesAction.java (92%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/ImportTemporaryVesselAction.java (92%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/OpenReplaceTemporaryGearUIAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/OpenReplaceTemporaryPersonUIAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/OpenReplaceTemporarySpeciesUIAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/actions}/OpenReplaceTemporaryVesselUIAction.java (97%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/replace/actions}/AbstractReplaceTemporaryUIAction.java (95%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/replace/actions}/ReplaceTemporaryGearAction.java (96%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/replace/actions}/ReplaceTemporaryPersonAction.java (96%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/replace/actions}/ReplaceTemporarySpeciesAction.java (96%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/referential/replace/actions}/ReplaceTemporaryVesselAction.java (96%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/report/actions}/GenerateReportAction.java (91%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/actions/ShowReportAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/validation/actions}/EditCruiseInValidationUIAction.java (94%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/validation/actions}/EditFishingOperationInValidationUIAction.java (96%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/validation/actions}/ExportCruiseValidationMessagesAction.java (90%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/validation/actions}/ExportOperationValidationMessagesAction.java (91%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => content/validation/actions}/SaveCruiseToReadyToSynchAction.java (94%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => update/actions}/UpdateApplicationAction.java (94%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action => update/actions}/UpdateReportAction.java (94%) rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/{action/AbstractTuttiAction.java => util/actions/LongActionSupport.java} (95%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/actions/SimpleActionSupport.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentItemHandler.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentItemModel.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/AddAttachmentAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/HideAttachmentUIAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/OpenAttachmentAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/RemoveAttachmentAction.java rename tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/{ => actions}/SaveAttachmentAction.java (69%) create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/ShowAttachmentUIAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/actions/LoginAcceptAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/actions/LoginCancelAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/actions/CaracteristicEditorAddRowAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/actions/CaracteristicEditorCancelAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/actions/CaracteristicEditorRemoveRowAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/actions/CaracteristicEditorSaveAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/actions/EnterWeightCancelAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/actions/EnterWeightValidateAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/actions/EnterMelagWeightCancelAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/actions/EnterMelagWeightValidateAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/actions/SelectSpeciesCancelAction.java create mode 100644 tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/actions/SelectSpeciesValidateAction.java -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository tutti. See http://git.codelutin.com/tutti.git commit 72b17d41abc159800890d0c3050c94920ca25cef Author: Tony CHEMIT <chemit@codelutin.com> Date: Mon Mar 9 11:50:33 2015 +0100 fixes #6793: [Modèle de catégorisation] Erreur lors de la suppression d'une catégorie - use SimpleAction instead of code in handlers - fix some issues with ErrorHandler (introduced by the refactor) --- .../filtered-resources/tutti-help-fr.properties | 27 +- .../java/fr/ifremer/tutti/ui/swing/RunTutti.java | 6 +- .../ifremer/tutti/ui/swing/TuttiActionFactory.java | 27 +- .../fr/ifremer/tutti/ui/swing/TuttiUIContext.java | 12 +- .../fr/ifremer/tutti/ui/swing/content/MainUI.css | 49 +-- .../fr/ifremer/tutti/ui/swing/content/MainUI.jaxx | 7 +- .../tutti/ui/swing/content/MainUIHandler.java | 65 ++-- .../actions}/AbstractChangeLocaleAction.java | 18 +- .../actions}/AbstractChangeScreenAction.java | 2 +- .../actions}/AbstractMainUITuttiAction.java | 5 +- .../actions}/ChangeToLocaleFRAction.java | 2 +- .../actions}/ChangeToLocaleUKAction.java | 2 +- .../actions}/CloseApplicationAction.java | 2 +- .../actions}/ConnectIchtyometerAction.java | 2 +- .../actions}/DisconnectIchtyometerAction.java | 2 +- .../EditCatchesForSelectedCruiseAction.java} | 8 +- .../actions}/EditSelectedCruiseAction.java | 2 +- .../actions}/EditSelectedProgramAction.java | 2 +- .../actions}/EditSelectedProtocolAction.java | 2 +- .../actions}/GoToPreviousScreenAction.java | 3 +- .../ui/swing/content/actions/GotoSiteAction.java | 43 +++ .../actions/OpenDbScreenAction.java} | 6 +- .../actions/OpenHomeScreenAction.java} | 6 +- .../actions/OpenReportScreenAction.java} | 8 +- .../OpenSampleCategoryModelScreenAction.java} | 6 +- .../OpenTemporaryReferentialScreenAction.java} | 6 +- .../actions}/ShowAboutAction.java | 8 +- .../actions}/ShowConfigAction.java | 2 +- .../ui/swing/content/actions/ShowHelpAction.java | 26 ++ .../{action => content/actions}/StartAction.java | 9 +- .../actions/ValidateSelectedCruiseAction.java} | 8 +- .../content/category/EditSampleCategoryModelUI.css | 7 +- .../category/EditSampleCategoryModelUI.jaxx | 11 +- .../category/EditSampleCategoryModelUIHandler.java | 141 +++++---- .../actions/AddSampleCategoryRowAction.java | 63 ++++ .../actions/ExportSampleCategoryModelAction.java | 6 +- .../actions/MoveDownSampleCategoryRowAction.java | 34 +++ .../actions/MoveUpSampleCategoryRowAction.java | 35 +++ .../actions/RemoveSampleCategoryRowAction.java | 51 ++++ .../actions/SaveSampleCategoryModelAction.java | 4 +- .../swing/content/config/TuttiConfigUIHandler.java | 4 +- .../config/actions}/ReloadTuttiAction.java | 3 +- .../tutti/ui/swing/content/cruise/EditCruiseUI.css | 27 +- .../ui/swing/content/cruise/EditCruiseUI.jaxx | 15 +- .../swing/content/cruise/EditCruiseUIHandler.java | 12 +- .../content/cruise/GearCaracteristicsEditorUI.css | 4 + .../content/cruise/GearCaracteristicsEditorUI.jaxx | 9 +- .../cruise/GearCaracteristicsEditorUIHandler.java | 145 +++++---- .../actions}/EditGearCaracteristicsAction.java | 5 +- .../actions/GearCaracteristicAddRowAction.java | 52 ++++ .../actions/GearCaracteristicCancelAction.java | 36 +++ .../actions/GearCaracteristicRemoveRowAction.java | 63 ++++ .../actions/GearCaracteristicSaveAction.java | 48 +++ .../cruise/actions/GenerateCampaignNameAction.java | 39 +++ .../cruise/actions}/ResetCruiseAction.java | 5 +- .../cruise/actions}/SaveCruiseAction.java | 5 +- .../actions}/ViewGearCaracteristicsAction.java | 5 +- .../tutti/ui/swing/content/db/DbManagerUI.css | 10 +- .../db/actions}/CloseDbAction.java | 3 +- .../db/actions}/ExportAndCleanDbAction.java | 3 +- .../db/actions}/ExportDbAction.java | 3 +- .../db/actions}/ImportDbAction.java | 6 +- .../db/actions}/ImportOrReimportDbAction.java | 3 +- .../db/actions}/InstallDbAction.java | 3 +- .../db/actions}/InstallOrReinstallDbAction.java | 3 +- .../db/actions}/OpenDbAction.java | 3 +- .../db/actions}/ReimportDbAction.java | 3 +- .../db/actions}/ReinstallDbAction.java | 3 +- .../db/actions}/UpdateDbAction.java | 3 +- .../genericformat/GenericFormatImportUI.css | 2 +- .../actions/GenericFormatImportAction.java | 4 +- .../actions/GenericFormatValidateAction.java | 4 +- .../OpenGenericFormatImportReportAction.java | 4 +- .../OpenGenericFormatValidateReportAction.java | 4 +- .../SaveGenericFormatImportReportAction.java | 4 +- .../SaveGenericFormatValidateReportAction.java | 4 +- .../tutti/ui/swing/content/home/SelectCruiseUI.css | 36 +-- .../home/actions}/CloneProtocolAction.java | 3 +- .../home/actions}/DeleteProtocolAction.java | 5 +- .../home/actions}/EditCatchesAction.java | 3 +- .../home/actions}/EditCruiseAction.java | 3 +- .../home/actions}/EditProgramAction.java | 3 +- .../home/actions}/EditProtocolAction.java | 3 +- .../actions}/ExportCruiseForSumatraAction.java | 3 +- .../actions}/ExportGenericFormatCruiseAction.java | 5 +- .../ExportGenericFormatProgramCruisesAction.java | 5 +- .../home/actions}/ExportProtocolAction.java | 5 +- .../ImportGenericFormatProgramCruisesAction.java | 5 +- .../home/actions}/ImportProtocolAction.java | 3 +- .../home/actions}/NewCruiseAction.java | 3 +- .../home/actions}/NewProgramAction.java | 3 +- .../home/actions}/NewProtocolAction.java | 3 +- .../actions}/OpenGenericFormatImportScreen.java | 3 +- .../home/actions}/SendCruiseReportAction.java | 3 +- .../SpeciesToConfirmReportForCruiseAction.java | 3 +- .../home/actions}/ValidateCatchesAction.java | 3 +- .../content/operation/EditFishingOperationUI.css | 10 +- .../operation/EditFishingOperationUIHandler.java | 2 +- .../content/operation/FishingOperationsUI.css | 4 +- .../operation/FishingOperationsUIHandler.java | 2 +- .../content/operation/catches/EditCatchesUI.css | 16 +- .../operation/catches/EditCatchesUIHandler.java | 132 ++++---- .../operation/catches/MultiPostImportLogDialog.css | 1 + .../catches/accidental/AccidentalBatchUI.css | 7 +- .../catches/accidental/AccidentalBatchUI.jaxx | 3 +- .../accidental/AccidentalBatchUIHandler.java | 10 - .../actions}/ExportMultiPostAccidentalAction.java | 3 +- .../actions}/ImportMultiPostAccidentalAction.java | 3 +- .../actions/OpenCreateAccidentalBatchUIAction.java | 33 ++ .../actions}/RemoveAccidentalBatchAction.java | 5 +- .../accidental/create/CreateAccidentalBatchUI.css | 3 + .../accidental/create/CreateAccidentalBatchUI.jaxx | 6 +- .../create/CreateAccidentalBatchUIHandler.java | 44 +-- .../CreateAccidentalBatchAndCloseAction.java | 40 +++ .../CreateAccidentalBatchAndContinueAction.java | 42 +++ .../actions/CreateAccidentalBatchCancelAction.java | 26 ++ .../actions}/CancelEditCatchBatchAction.java | 6 +- .../catches/actions}/CleanBatchWeightsAction.java | 5 +- .../actions}/ComputeBatchWeightsAction.java | 5 +- .../ExportFishingOperationForSumatraAction.java | 5 +- .../ExportFishingOperationReportAction.java | 5 +- .../actions}/ExportMultiPostActionSupport.java | 5 +- .../actions}/ExportMultiPostCatchAction.java | 2 +- .../actions}/ImportMultiPostActionSupport.java | 6 +- .../actions}/ImportMultiPostCatchAction.java | 2 +- .../catches/actions}/SaveCatchBatchAction.java | 5 +- .../operation/catches/benthos/BenthosBatchUI.css | 17 +- .../operation/catches/benthos/BenthosBatchUI.jaxx | 15 +- .../catches/benthos/BenthosBatchUIHandler.java | 338 +++------------------ .../ChangeBenthosBatchSampleCategoryAction.java | 181 +++++++++++ .../benthos/actions}/CreateBenthosMelagAction.java | 5 +- .../actions}/ExportMultiPostBenthosAction.java | 3 +- .../actions}/ImportMultiPostBenthosAction.java | 3 +- .../OpenAddBenthosBatchSampleCategoryUIAction.java | 83 +++++ .../actions/OpenCreateBenthosBatchUIAction.java | 33 ++ .../OpenEditBenthosBatchFrequencyUIAction.java | 51 ++++ .../actions/OpenSplitBenthosBatchUIAction.java | 98 ++++++ .../benthos/actions}/RemoveBenthosBatchAction.java | 5 +- .../actions}/RemoveBenthosSubBatchAction.java | 5 +- .../benthos/actions}/RenameBenthosBatchAction.java | 5 +- .../benthos/create/CreateBenthosBatchUI.css | 5 +- .../benthos/create/CreateBenthosBatchUI.jaxx | 6 +- .../create/CreateBenthosBatchUIHandler.java | 48 +-- .../actions/CreateBenthosBatchAndCloseAction.java | 40 +++ .../CreateBenthosBatchAndContinueAction.java | 43 +++ .../actions/CreateBenthosBatchCancelAction.java | 35 +++ .../SelectSpeciesForBenthosBatchAction.java | 5 +- .../catches/benthos/split/SplitBenthosBatchUI.css | 2 + .../catches/benthos/split/SplitBenthosBatchUI.jaxx | 4 +- .../benthos/split/SplitBenthosBatchUIHandler.java | 44 +-- .../actions/SplitBenthosBatchCancelAction.java | 34 +++ .../split/actions/SplitBenthosBatchSaveAction.java | 55 ++++ .../IndividualObservationBatchUI.css | 9 +- .../IndividualObservationBatchUI.jaxx | 7 +- .../IndividualObservationBatchUIHandler.java | 10 - ...ExportMultiPostIndividualObservationAction.java | 3 +- ...ImportMultiPostIndividualObservationAction.java | 3 +- ...enCreateIndividualObservationBatchUIAction.java | 38 +++ .../RemoveAllIndividualObservationBatchAction.java | 5 +- .../RemoveIndividualObservationBatchAction.java | 5 +- ...SpeciesForIndividualObservationBatchAction.java | 5 +- .../create/CreateIndividualObservationBatchUI.css | 5 +- .../create/CreateIndividualObservationBatchUI.jaxx | 6 +- .../CreateIndividualObservationBatchUIHandler.java | 47 +-- ...teIndividualObservationBatchAndCloseAction.java | 40 +++ ...ndividualObservationBatchAndContinueAction.java | 49 +++ ...eateIndividualObservationBatchCancelAction.java | 35 +++ .../catches/marinelitter/MarineLitterBatchUI.css | 7 +- .../catches/marinelitter/MarineLitterBatchUI.jaxx | 8 +- .../marinelitter/MarineLitterBatchUIHandler.java | 12 - .../ExportMultiPostMarineLitterAction.java | 3 +- .../ImportMultiPostMarineLitterAction.java | 3 +- .../OpenCreateMarineLitterBatchUIAction.java | 38 +++ .../actions}/RemoveMarineLitterBatchAction.java | 6 +- .../create/CreateMarineLitterBatchUI.css | 3 + .../create/CreateMarineLitterBatchUI.jaxx | 6 +- .../create/CreateMarineLitterBatchUIHandler.java | 43 +-- ...CreateMarineLitterBatchBatchAndCloseAction.java | 40 +++ ...ateMarineLitterBatchBatchAndContinueAction.java | 46 +++ .../CreateMarineLitterBatchBatchCancelAction.java | 36 +++ .../operation/catches/species/SpeciesBatchUI.css | 23 +- .../operation/catches/species/SpeciesBatchUI.jaxx | 15 +- .../catches/species/SpeciesBatchUIHandler.java | 266 +--------------- .../ChangeSpeciesBatchSampleCategoryAction.java | 178 +++++++++++ .../species/actions}/CreateSpeciesMelagAction.java | 5 +- .../actions}/ExportMultiPostSpeciesAction.java | 3 +- .../species/actions}/ImportBigfinAction.java | 6 +- .../actions}/ImportMultiPostSpeciesAction.java | 3 +- .../species/actions}/ImportPsionAction.java | 6 +- .../species/actions}/ImportPupitriAction.java | 6 +- .../OpenAddSpeciesBatchSampleCategoryUIAction.java | 82 +++++ .../actions/OpenCreateSpeciesBatchUIAction.java | 38 +++ .../OpenEditSpeciesBatchFrequencyUIAction.java | 51 ++++ .../actions/OpenSplitSpeciesBatchUIAction.java | 95 ++++++ .../species/actions}/RemoveSpeciesBatchAction.java | 5 +- .../actions}/RemoveSpeciesSubBatchAction.java | 5 +- .../species/actions}/RenameSpeciesBatchAction.java | 5 +- .../species/create/CreateSpeciesBatchUI.css | 5 +- .../species/create/CreateSpeciesBatchUI.jaxx | 6 +- .../create/CreateSpeciesBatchUIHandler.java | 49 +-- .../actions/CreateSpeciesBatchAndCloseAction.java | 40 +++ .../CreateSpeciesBatchAndContinueAction.java | 43 +++ .../actions/CreateSpeciesBatchCancelAction.java | 35 +++ .../SelectSpeciesForSpeciesBatchAction.java | 5 +- .../catches/species/split/SplitSpeciesBatchUI.css | 2 + .../catches/species/split/SplitSpeciesBatchUI.jaxx | 4 +- .../species/split/SplitSpeciesBatchUIHandler.java | 44 +-- .../actions/SplitSpeciesBatchCancelAction.java | 34 +++ .../split/actions/SplitSpeciesBatchSaveAction.java | 55 ++++ .../operation/fishing/GearUseFeatureTabUI.css | 2 + .../operation/fishing/GearUseFeatureTabUI.jaxx | 5 +- .../operation/fishing/VesselUseFeatureTabUI.css | 2 + .../operation/fishing/VesselUseFeatureTabUI.jaxx | 5 +- .../actions}/CancelEditFishingOperationAction.java | 5 +- .../actions}/DeleteFishingOperationAction.java | 5 +- .../actions}/EditFishingOperationAction.java | 10 +- .../actions/GearUseFeatureAddRowAction.java | 27 ++ .../actions/GearUseFeatureRemoveRowAction.java | 27 ++ ...perationCaracteristicsFromColumnFileAction.java | 6 +- .../actions}/NewFishingOperationAction.java | 2 +- .../actions}/SaveFishingOperationAction.java | 5 +- .../actions/VesselUseFeatureAddRowAction.java | 27 ++ .../actions/VesselUseFeatureRemoveRowAction.java | 27 ++ .../ui/swing/content/program/EditProgramUI.css | 6 +- .../program/actions}/ResetProgramAction.java | 5 +- .../program/actions}/SaveProgramAction.java | 5 +- .../ui/swing/content/protocol/EditProtocolUI.css | 38 +-- .../content/protocol/EditProtocolUIHandler.java | 54 ++-- .../actions}/AddBenthosProtocolAction.java | 5 +- .../actions}/AddCaracteristicMappingAction.java | 5 +- .../actions}/AddSpeciesProtocolAction.java | 5 +- .../actions}/ExportAllCaracteristicAction.java | 5 +- .../actions}/ExportProtocolBenthosAction.java | 5 +- .../ExportProtocolCaracteristicAction.java | 5 +- .../actions}/ExportProtocolSpeciesAction.java | 5 +- .../protocol/actions}/ExportPupitriAction.java | 5 +- .../actions}/ImportProtocolBenthosAction.java | 5 +- .../ImportProtocolCaracteristicAction.java | 5 +- .../actions}/ImportProtocolSpeciesAction.java | 5 +- .../actions}/LoadProtocolImportColumnsAction.java | 5 +- .../actions}/RemoveBenthosProtocolAction.java | 5 +- .../actions}/RemoveCaracteristicMappingAction.java | 5 +- .../actions}/RemoveSpeciesProtocolAction.java | 5 +- .../protocol/actions}/SaveProtocolAction.java | 5 +- .../actions}/SelectOtherBenthosAction.java | 10 +- .../actions}/SelectOtherSpeciesAction.java | 8 +- .../referential/ManageTemporaryReferentialUI.css | 32 +- .../AbstractOpenReplaceTemporaryUIAction.java | 5 +- .../ExportExistingTemporaryGearAction.java | 5 +- .../ExportExistingTemporaryPersonAction.java | 5 +- .../ExportExistingTemporarySpeciesAction.java | 5 +- .../ExportExistingTemporaryVesselAction.java | 5 +- .../actions}/ExportTemporaryGearExampleAction.java | 5 +- .../ExportTemporaryPersonExampleAction.java | 5 +- .../ExportTemporarySpeciesExampleAction.java | 5 +- .../ExportTemporaryVesselExampleAction.java | 5 +- .../actions}/ImportTemporaryGearAction.java | 5 +- .../actions}/ImportTemporaryPersonAction.java | 5 +- .../actions}/ImportTemporarySpeciesAction.java | 5 +- .../actions}/ImportTemporaryVesselAction.java | 5 +- .../actions}/OpenReplaceTemporaryGearUIAction.java | 2 +- .../OpenReplaceTemporaryPersonUIAction.java | 2 +- .../OpenReplaceTemporarySpeciesUIAction.java | 2 +- .../OpenReplaceTemporaryVesselUIAction.java | 2 +- .../referential/replace/ReplaceTemporaryGearUI.css | 2 +- .../replace/ReplaceTemporaryPersonUI.css | 2 +- .../replace/ReplaceTemporarySpeciesUI.css | 2 +- .../replace/ReplaceTemporaryVesselUI.css | 2 +- .../actions}/AbstractReplaceTemporaryUIAction.java | 5 +- .../actions}/ReplaceTemporaryGearAction.java | 2 +- .../actions}/ReplaceTemporaryPersonAction.java | 2 +- .../actions}/ReplaceTemporarySpeciesAction.java | 2 +- .../actions}/ReplaceTemporaryVesselAction.java | 2 +- .../tutti/ui/swing/content/report/ReportUI.css | 5 +- .../tutti/ui/swing/content/report/ReportUI.jaxx | 3 +- .../report/actions}/GenerateReportAction.java | 5 +- .../content/report/actions/ShowReportAction.java | 34 +++ .../swing/content/validation/ValidateCruiseUI.css | 6 +- .../validation/ValidateCruiseUIHandler.java | 4 +- .../actions}/EditCruiseInValidationUIAction.java | 5 +- .../EditFishingOperationInValidationUIAction.java | 5 +- .../ExportCruiseValidationMessagesAction.java | 5 +- .../ExportOperationValidationMessagesAction.java | 5 +- .../actions}/SaveCruiseToReadyToSynchAction.java | 5 +- .../update/TuttiApplicationUpdaterCallBack.java | 4 +- .../ui/swing/update/TuttiDbUpdaterCallBack.java | 4 +- .../swing/update/TuttiReportUpdaterCallBack.java | 4 +- .../swing/update/TuttiUpdaterCallBackSupport.java | 6 +- .../actions}/UpdateApplicationAction.java | 7 +- .../actions}/UpdateReportAction.java | 7 +- .../ui/swing/util/AbstractTuttiUIHandler.java | 60 ++-- .../tutti/ui/swing/util/TuttiExceptionHandler.java | 26 +- .../actions/LongActionSupport.java} | 6 +- .../ui/swing/util/actions/SimpleActionSupport.java | 33 ++ .../swing/util/attachment/AttachmentEditorUI.css | 40 +-- .../swing/util/attachment/AttachmentEditorUI.jaxx | 5 +- .../util/attachment/AttachmentEditorUIHandler.java | 143 ++------- .../ui/swing/util/attachment/AttachmentItem.css | 46 ++- .../ui/swing/util/attachment/AttachmentItem.jaxx | 27 +- .../util/attachment/AttachmentItemHandler.java | 45 +++ .../swing/util/attachment/AttachmentItemModel.java | 71 +++++ .../attachment/actions/AddAttachmentAction.java | 68 +++++ .../attachment/actions/HideAttachmentUIAction.java | 39 +++ .../attachment/actions/OpenAttachmentAction.java | 50 +++ .../attachment/actions/RemoveAttachmentAction.java | 66 ++++ .../{ => actions}/SaveAttachmentAction.java | 41 ++- .../attachment/actions/ShowAttachmentUIAction.java | 26 ++ .../ui/swing/util/auth/AuthenticationInfo.java | 2 +- .../ifremer/tutti/ui/swing/util/auth/LoginUI.css | 42 ++- .../ifremer/tutti/ui/swing/util/auth/LoginUI.jaxx | 4 +- .../tutti/ui/swing/util/auth/LoginUIHandler.java | 27 +- .../swing/util/auth/actions/LoginAcceptAction.java | 38 +++ .../swing/util/auth/actions/LoginCancelAction.java | 35 +++ .../caracteristics/CaracteristicMapEditorUI.css | 93 ++---- .../caracteristics/CaracteristicMapEditorUI.jaxx | 9 +- .../CaracteristicMapEditorUIHandler.java | 142 ++++----- .../actions/CaracteristicEditorAddRowAction.java | 60 ++++ .../actions/CaracteristicEditorCancelAction.java | 35 +++ .../CaracteristicEditorRemoveRowAction.java | 68 +++++ .../actions/CaracteristicEditorSaveAction.java | 37 +++ .../tutti/ui/swing/util/catches/EnterWeightUI.css | 2 + .../swing/util/catches/EnterWeightUIHandler.java | 44 +-- .../catches/actions/EnterWeightCancelAction.java | 38 +++ .../catches/actions/EnterWeightValidateAction.java | 35 +++ .../ui/swing/util/species/EnterMelagWeightUI.css | 2 + .../ui/swing/util/species/EnterMelagWeightUI.jaxx | 4 +- .../ui/swing/util/species/SelectSpeciesUI.css | 51 ++-- .../ui/swing/util/species/SelectSpeciesUI.jaxx | 4 +- .../actions/EnterMelagWeightCancelAction.java | 37 +++ .../actions/EnterMelagWeightValidateAction.java | 36 +++ .../species/actions/SelectSpeciesCancelAction.java | 36 +++ .../actions/SelectSpeciesValidateAction.java | 35 +++ .../resources/i18n/tutti-ui-swing_en_GB.properties | 2 + .../resources/i18n/tutti-ui-swing_fr_FR.properties | 3 +- 334 files changed, 4706 insertions(+), 2218 deletions(-) diff --git a/tutti-ui-swing/src/main/filtered-resources/tutti-help-fr.properties b/tutti-ui-swing/src/main/filtered-resources/tutti-help-fr.properties index 861bc17..af81ad6 100644 --- a/tutti-ui-swing/src/main/filtered-resources/tutti-help-fr.properties +++ b/tutti-ui-swing/src/main/filtered-resources/tutti-help-fr.properties @@ -1,28 +1,5 @@ -### -# #%L -# Tutti :: UI -# $Id:$ -# $HeadURL:$ -# %% -# Copyright (C) 2012 - 2015 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 -#Wed Mar 04 17:01:08 CET 2015 +#Sat Mar 07 10:47:12 CET 2015 tutti.config.help=config.html tutti.createAccidentalBatch.action.cancel.help=editFishingOperation.html\#captureCapturesAccidentellesActions tutti.createAccidentalBatch.action.saveAndClose.help=editFishingOperation.html\#captureCapturesAccidentellesActions @@ -167,6 +144,7 @@ tutti.editCruise.action.close.help=editCruise.html\#actions tutti.editCruise.action.editGearCaracteristics.help=editCruise.html\#actions tutti.editCruise.action.generateName.help=editCruise.html\#actions tutti.editCruise.action.reset.help=editCruise.html\#actions +tutti.editCruise.action.resetName.help= tutti.editCruise.action.resetSurveyPart.help=editCruise.html\#actions tutti.editCruise.action.save.help=editCruise.html\#actions tutti.editCruise.action.viewGearCaracteristics.help= @@ -275,6 +253,7 @@ tutti.editProtocol.field.species.help=editProtocol.html\#fieldsSpecies tutti.editProtocol.field.vesselUseFeature.help=editProtocol.html\#fieldsCaracteristics tutti.editProtocol.help=editProtocol.html tutti.editProtocol.pane.caracteristic.help=editProtocol.html\#fieldsCaracteristics +tutti.editSampleCategoryModel.action.addRow.help= tutti.editSampleCategoryModel.action.cancel.help=editSampleCategory.html\#actions tutti.editSampleCategoryModel.action.close.help=editSampleCategory.html\#actions tutti.editSampleCategoryModel.action.export.help=editSampleCategory.html\#actions diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/RunTutti.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/RunTutti.java index 0df7ed5..cabf77b 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/RunTutti.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/RunTutti.java @@ -23,9 +23,9 @@ package fr.ifremer.tutti.ui.swing; */ import fr.ifremer.tutti.TuttiConfiguration; -import fr.ifremer.tutti.ui.swing.action.StartAction; -import fr.ifremer.tutti.ui.swing.action.UpdateApplicationAction; -import fr.ifremer.tutti.ui.swing.action.UpdateReportAction; +import fr.ifremer.tutti.ui.swing.content.actions.StartAction; +import fr.ifremer.tutti.ui.swing.update.actions.UpdateApplicationAction; +import fr.ifremer.tutti.ui.swing.update.actions.UpdateReportAction; import fr.ifremer.tutti.ui.swing.content.MainUI; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import fr.ifremer.tutti.ui.swing.util.TuttiExceptionHandler; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiActionFactory.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiActionFactory.java index a343c66..bc3d16a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiActionFactory.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiActionFactory.java @@ -22,13 +22,18 @@ package fr.ifremer.tutti.ui.swing; * #L% */ +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; +import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; +import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; +import jaxx.runtime.JAXXObject; +import org.apache.commons.lang3.reflect.ConstructorUtils; import org.nuiton.jaxx.application.ApplicationTechnicalException; import org.nuiton.jaxx.application.swing.AbstractApplicationUIHandler; import org.nuiton.jaxx.application.swing.action.AbstractApplicationAction; import org.nuiton.jaxx.application.swing.action.ApplicationActionFactory; -import fr.ifremer.tutti.ui.swing.action.AbstractMainUITuttiAction; -import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; -import org.apache.commons.lang3.reflect.ConstructorUtils; + +import javax.swing.AbstractButton; +import javax.swing.Action; import static org.nuiton.i18n.I18n.t; @@ -57,4 +62,20 @@ public class TuttiActionFactory extends ApplicationActionFactory { throw new ApplicationTechnicalException(t("application.action.create.error", actionName), e); } } + + public <A extends Action> A createSimpleAction(AbstractApplicationUIHandler handler, + AbstractButton abstractButton, + Class<A> actionType) { + try { + + A action = ConstructorUtils.invokeConstructor(actionType, (JAXXObject) handler.getUI()); + TuttiUIUtil.prepareAction(abstractButton, action, abstractButton.getName()); + + return action; + + } catch (Exception e) { + throw new ApplicationTechnicalException(t("jaxx.application.action.create.error", actionType), e); + } + + } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java index 62f9d4b..7a91e01 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java @@ -41,6 +41,7 @@ import fr.ifremer.tutti.service.catches.multipost.MultiPostExportService; import fr.ifremer.tutti.service.catches.multipost.MultiPostImportService; import fr.ifremer.tutti.service.export.pdf.CatchesPdfExportService; import fr.ifremer.tutti.service.export.sumatra.CatchesSumatraExportService; +import fr.ifremer.tutti.service.export.toconfirmreport.ToConfirmReportService; import fr.ifremer.tutti.service.genericformat.GenericFormatExportService; import fr.ifremer.tutti.service.genericformat.GenericFormatImportService; import fr.ifremer.tutti.service.operationimport.FishingOperationImportService; @@ -54,7 +55,6 @@ import fr.ifremer.tutti.service.referential.ReferentialTemporarySpeciesService; import fr.ifremer.tutti.service.referential.ReferentialTemporaryVesselService; import fr.ifremer.tutti.service.referential.TuttiReferentialSynchronizeService; import fr.ifremer.tutti.service.report.ReportService; -import fr.ifremer.tutti.service.export.toconfirmreport.ToConfirmReportService; import fr.ifremer.tutti.ui.swing.content.MainUI; import fr.ifremer.tutti.ui.swing.updater.DeleteHelper; import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; @@ -85,7 +85,6 @@ import org.nuiton.jaxx.application.ApplicationTechnicalException; import org.nuiton.jaxx.application.listener.PropagatePropertyChangeListener; import org.nuiton.jaxx.application.swing.ApplicationUIContext; import org.nuiton.jaxx.application.swing.action.ApplicationActionEngine; -import org.nuiton.jaxx.application.swing.action.ApplicationActionFactory; import org.nuiton.jaxx.application.swing.action.ApplicationActionUI; import org.nuiton.jaxx.application.swing.action.ApplicationUIAction; import org.nuiton.jaxx.application.swing.util.ApplicationErrorHelper; @@ -266,7 +265,7 @@ public class TuttiUIContext extends AbstractBean implements Closeable, UIMessage private Properties helpMapping; - private final ApplicationActionFactory tuttiActionFactory; + private final TuttiActionFactory tuttiActionFactory; private final ApplicationActionEngine tuttiActionEngine; @@ -359,7 +358,12 @@ public class TuttiUIContext extends AbstractBean implements Closeable, UIMessage @Override public void showErrorDialog(String message, Throwable cause) { + if (actionUI != null) { + actionUI.close(); + actionUI.dispose(); + } super.showErrorDialog(message, cause); + } }; this.dataContext = serviceContext.getDataContext(); @@ -980,7 +984,7 @@ public class TuttiUIContext extends AbstractBean implements Closeable, UIMessage } @Override - public ApplicationActionFactory getActionFactory() { + public TuttiActionFactory getActionFactory() { return tuttiActionFactory; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.css index 48d66be..40233bd 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.css @@ -20,6 +20,10 @@ * #L% */ +JMenu { + _skipAction: true; +} + #busyBlockLayerUI { useIcon:false; blockingColor: {model.getConfig().getColorBlockingLayer()}; @@ -44,7 +48,7 @@ toolTipText: "tutti.main.action.configuration.tip"; i18nMnemonic: "tutti.main.action.configuration.mnemonic"; enabled: {model.getScreen() != TuttiScreen.CONFIG}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ShowConfigAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.ShowConfigAction.class}; _help: {"tutti.main.menu.action.configuration.help"}; } @@ -54,7 +58,7 @@ toolTipText: "tutti.main.action.editSampleCategoryModel.tip"; i18nMnemonic: "tutti.main.action.editSampleCategoryModel.mnemonic"; enabled: {model.getScreen() != TuttiScreen.EDIT_SAMPLE_CATEGORY_MODEL}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.EditSampleCategoryModelAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.OpenSampleCategoryModelScreenAction.class}; _help: {"tutti.main.menu.action.editSampleCategoryModel.help"}; } @@ -63,7 +67,7 @@ text: "tutti.main.action.exit"; toolTipText: "tutti.main.action.exit.tip"; i18nMnemonic: "tutti.main.action.exit.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.CloseApplicationAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.CloseApplicationAction.class}; _help: {"tutti.main.menu.action.exit.help"}; } @@ -72,7 +76,7 @@ text: "tutti.main.action.updateApplication"; toolTipText: "tutti.main.action.updateApplication.tip"; i18nMnemonic: "tutti.main.action.updateApplication.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.UpdateApplicationAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.update.actions.UpdateApplicationAction.class}; _help: {"tutti.main.menu.action.updateApplication.help"}; } @@ -81,7 +85,7 @@ text: "tutti.main.action.updateReport"; toolTipText: "tutti.main.action.updateReport.tip"; i18nMnemonic: "tutti.main.action.updateReport.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.UpdateReportAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.update.actions.UpdateReportAction.class}; _help: {"tutti.main.menu.action.updateReport.help"}; } @@ -91,7 +95,7 @@ toolTipText: "tutti.main.action.connectIchtyometer.tip"; i18nMnemonic: "tutti.main.action.connectIchtyometer.mnemonic"; visible: {!model.isIchtyometerConnected()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ConnectIchtyometerAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.ConnectIchtyometerAction.class}; _help: {"tutti.main.menu.action.connectIchtyometer.help"}; } @@ -101,7 +105,7 @@ toolTipText: "tutti.main.action.disconnectIchtyometer.tip"; i18nMnemonic: "tutti.main.action.disconnectIchtyometer.mnemonic"; visible: {model.isIchtyometerConnected()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.DisconnectIchtyometerAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.DisconnectIchtyometerAction.class}; _help: {"tutti.main.menu.action.disconnectIchtyometer.help"}; } @@ -111,7 +115,7 @@ toolTipText: "tutti.main.action.manageDb.tip"; i18nMnemonic: "tutti.main.action.manageDb.mnemonic"; enabled: {model.getScreen() != TuttiScreen.MANAGE_DB}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ManageDbAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.OpenDbScreenAction.class}; _help: {"tutti.main.menu.action.manageDb.help"}; } @@ -129,7 +133,7 @@ toolTipText: "tutti.main.action.changeLocaleFR.tip"; i18nMnemonic: "tutti.main.action.changeLocaleFR.mnemonic"; enabled: {!handler.acceptLocale(model.getLocale(), "fr_FR")}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ChangeToLocaleFRAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.ChangeToLocaleFRAction.class}; _help: {"tutti.main.menu.action.changeLocaleFR.help"}; } @@ -139,7 +143,7 @@ toolTipText: "tutti.main.action.changeLocaleUK.tip"; i18nMnemonic: "tutti.main.action.changeLocaleUK.mnemonic"; enabled: {!handler.acceptLocale(model.getLocale(), "en_GB")}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ChangeToLocaleUKAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.ChangeToLocaleUKAction.class}; _help: {"tutti.main.menu.action.changeLocaleUK.help"}; } @@ -156,7 +160,7 @@ toolTipText: "tutti.main.action.selectCruise.tip"; enabled: {model.getScreen() != TuttiScreen.SELECT_CRUISE}; i18nMnemonic: "tutti.main.action.selectCruise.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SelectCruiseAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.OpenHomeScreenAction.class}; _help: {"tutti.main.menu.action.selectCruise.help"}; } @@ -166,7 +170,7 @@ toolTipText: "tutti.main.action.editProgram.tip"; i18nMnemonic: "tutti.main.action.editSelectedProgram.mnemonic"; enabled: {model.getScreen() != TuttiScreen.EDIT_PROGRAM && model.isProgramFilled()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.EditSelectedProgramAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.EditSelectedProgramAction.class}; _help: {"tutti.main.menu.action.editProgram.help"}; } @@ -176,7 +180,7 @@ toolTipText: "tutti.main.action.editSelectedCruise.tip"; i18nMnemonic: "tutti.main.action.editSelectedCruise.mnemonic"; enabled: {model.getScreen() != TuttiScreen.EDIT_CRUISE && model.isCruiseFilled()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.EditSelectedCruiseAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.EditSelectedCruiseAction.class}; _help: {"tutti.main.menu.action.editCruise.help"}; } @@ -186,7 +190,7 @@ toolTipText: "tutti.main.action.generateSelectedCruiseReport.tip"; i18nMnemonic: "tutti.main.action.generateSelectedCruiseReport.mnemonic"; enabled: {model.getScreen() != TuttiScreen.REPORT && model.isCruiseFilled()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ShowReportAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.OpenReportScreenAction.class}; _help: {"tutti.main.menu.action.generateSelectedCruiseReport.help"}; } @@ -196,7 +200,7 @@ toolTipText: "tutti.main.action.editSelectedProtocol.tip"; i18nMnemonic: "tutti.main.action.editSelectedProtocol.mnemonic"; enabled: {model.getScreen() != TuttiScreen.EDIT_PROTOCOL && model.isProtocolFilled()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.EditSelectedProtocolAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.EditSelectedProtocolAction.class}; _help: {"tutti.main.menu.action.editProtocol.help"}; } @@ -206,7 +210,7 @@ toolTipText: "tutti.main.action.editCatches.tip"; i18nMnemonic: "tutti.main.action.editCatches.mnemonic"; enabled: {model.getScreen() != TuttiScreen.EDIT_FISHING_OPERATION && model.isCruiseFilled()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.EditSelectedCruiseCatchesAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.EditCatchesForSelectedCruiseAction.class}; _help: {"tutti.main.menu.action.editCatches.help"}; } @@ -216,7 +220,7 @@ toolTipText: "tutti.main.action.validateCatches.tip"; i18nMnemonic: "tutti.main.action.validateCatches.mnemonic"; enabled: {model.getScreen() != TuttiScreen.VALIDATE_CRUISE && model.isCruiseFilled()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ValidateSelectedCruiseCatchesAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.ValidateSelectedCruiseAction.class}; _help: {"tutti.main.menu.action.validateCatches.help"}; } @@ -226,7 +230,7 @@ toolTipText: "tutti.main.action.genericFormatImport.tip"; i18nMnemonic: "tutti.main.action.genericFormatImport.mnemonic"; enabled: {model.getScreen() != TuttiScreen.GENERIC_FORMAT_IMPORT}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.OpenGenericFormatImportScreen.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.OpenGenericFormatImportScreen.class}; _help: {"tutti.main.menu.action.genericFormatImport.help"}; } @@ -243,7 +247,7 @@ toolTipText: "tutti.main.action.importTemporaryReferential.tip"; i18nMnemonic: "tutti.main.action.importTemporaryReferential.mnemonic"; enabled: {model.getScreen() != TuttiScreen.IMPORT_TEMPORARY_REFERENTIAL}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportTemporaryReferentialAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.OpenTemporaryReferentialScreenAction.class}; _help: {"tutti.main.menu.action.importTemporaryReferential.help"}; } @@ -258,6 +262,7 @@ text: "tutti.main.action.showHelp"; toolTipText: "tutti.main.action.showHelp.tip"; i18nMnemonic: "tutti.main.action.showHelp.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.actions.ShowHelpAction.class}; _help: {"tutti.index.help"}; } @@ -266,6 +271,7 @@ text: "tutti.main.action.site"; toolTipText: "tutti.main.action.site.tip"; i18nMnemonic: "tutti.main.action.site.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.actions.GotoSiteAction.class}; _help: {"tutti.main.menu.action.site.help"}; } @@ -274,7 +280,7 @@ toolTipText: "tutti.main.action.about.tip"; actionIcon: about; i18nMnemonic: "tutti.main.action.about.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ShowAboutAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.ShowAboutAction.class}; _help: {"tutti.main.menu.action.about.help"}; } @@ -286,6 +292,7 @@ #validatorMessageWidget { focusPainted: false; + _skipAction: true; _help: {"tutti.main.status.validation.help"}; } @@ -300,6 +307,8 @@ #showHelp { actionIcon:"show-help"; toolTipText:"tutti.main.action.showHelp.tip"; + focusable: false; + _skipAction: true; _help: {"tutti.main.menu.action.showHelp.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.jaxx index a9000b5..04af99a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.jaxx @@ -28,7 +28,6 @@ fr.ifremer.tutti.ui.swing.TuttiUIContext fr.ifremer.tutti.ui.swing.TuttiScreen fr.ifremer.tutti.ui.swing.TuttiHelpBroker - fr.ifremer.tutti.ui.swing.action.* fr.ifremer.tutti.ui.swing.util.TuttiUIUtil jaxx.runtime.swing.BlockingLayerUI @@ -85,10 +84,8 @@ </JMenu> <JMenu id='menuHelp'> - <JMenuItem id='menuShowHelp' - onActionPerformed="handler.showHelp()"/> - <JMenuItem id='menuHelpSite' - onActionPerformed='handler.gotoSite()'/> + <JMenuItem id='menuShowHelp'/> + <JMenuItem id='menuHelpSite'/> <JMenuItem id='menuHelpAbout'/> <JMenu id='menuChangeLocale'> <JMenuItem id='menuChangeLocaleUK'/> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUIHandler.java index 6c16ea9..dac8e7c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUIHandler.java @@ -23,7 +23,6 @@ package fr.ifremer.tutti.ui.swing.content; */ import com.google.common.base.Preconditions; -import fr.ifremer.tutti.TuttiConfiguration; import fr.ifremer.tutti.ichtyometer.feed.FeedReader; import fr.ifremer.tutti.persistence.entities.data.Cruise; import fr.ifremer.tutti.persistence.entities.data.Program; @@ -35,10 +34,9 @@ import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelUI; import fr.ifremer.tutti.ui.swing.content.config.TuttiConfigUI; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUI; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUIHandler; -import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUI; -import fr.ifremer.tutti.ui.swing.content.validation.ValidateCruiseUI; import fr.ifremer.tutti.ui.swing.content.db.DbManagerUI; import fr.ifremer.tutti.ui.swing.content.db.DbManagerUIHandler; +import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUI; import fr.ifremer.tutti.ui.swing.content.home.SelectCruiseUI; import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI; import fr.ifremer.tutti.ui.swing.content.program.EditProgramUI; @@ -47,6 +45,7 @@ import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUI; import fr.ifremer.tutti.ui.swing.content.report.ReportUI; +import fr.ifremer.tutti.ui.swing.content.validation.ValidateCruiseUI; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; import fr.ifremer.tutti.ui.swing.util.RemoveablePropertyChangeListener; import fr.ifremer.tutti.ui.swing.util.TuttiUI; @@ -56,7 +55,6 @@ import jaxx.runtime.SwingUtil; import jaxx.runtime.validator.swing.SwingValidator; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.i18n.I18n; import org.nuiton.jaxx.application.swing.action.ApplicationActionUI; import org.nuiton.jaxx.application.swing.util.CloseableUI; @@ -69,7 +67,6 @@ import java.awt.Cursor; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.beans.PropertyChangeListenerProxy; -import java.net.URL; import java.util.Locale; import static org.nuiton.i18n.I18n.t; @@ -268,35 +265,35 @@ public class MainUIHandler extends AbstractTuttiUIHandler<TuttiUIContext, MainUI return l != null && l.toString().equals(expected); } - public void changeLocale(Locale locale) { - - // change locale (and save configuration) - getModel().setLocale(locale); - - // change i18n locale - I18n.setDefaultLocale(getConfig().getI18nLocale()); - - // reload decorator service (TODO Check if this is necessary) - getContext().reloadDecoratorService(); - - // close reload - reloadUI(); - } - - public void gotoSite() { - TuttiConfiguration config = getConfig(); - - URL siteURL = config.getSiteUrl(); - - if (log.isDebugEnabled()) { - log.debug("goto " + siteURL); - } - TuttiUIUtil.openLink(siteURL); - } - - public void showHelp() { - getModel().showHelp(ui, ui.getBroker(), null); - } +// public void changeLocale(Locale locale) { +// +// // change locale (and save configuration) +// getModel().setLocale(locale); +// +// // change i18n locale +// I18n.setDefaultLocale(getConfig().getI18nLocale()); +// +// // reload decorator service (TODO Check if this is necessary) +// getContext().reloadDecoratorService(); +// +// // close reload +// reloadUI(); +// } + +// public void gotoSite() { +// TuttiConfiguration config = getConfig(); +// +// URL siteURL = config.getSiteUrl(); +// +// if (log.isDebugEnabled()) { +// log.debug("goto " + siteURL); +// } +// TuttiUIUtil.openLink(siteURL); +// } + +// public void showHelp() { +// getModel().showHelp(ui, ui.getBroker(), null); +// } @Override public final void showInformationMessage(String message) { diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractChangeLocaleAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/AbstractChangeLocaleAction.java similarity index 72% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractChangeLocaleAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/AbstractChangeLocaleAction.java index 2d5316c..3e6728c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractChangeLocaleAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/AbstractChangeLocaleAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L @@ -23,6 +23,7 @@ package fr.ifremer.tutti.ui.swing.action; */ import fr.ifremer.tutti.ui.swing.content.MainUIHandler; +import org.nuiton.i18n.I18n; import java.util.Locale; @@ -44,6 +45,19 @@ public abstract class AbstractChangeLocaleAction extends AbstractChangeScreenAct @Override public void doAction() throws Exception { - getHandler().changeLocale(getLocale()); + Locale locale = getLocale(); + + // change locale (and save configuration) + getModel().setLocale(locale); + + // change i18n locale + I18n.setDefaultLocale(getConfig().getI18nLocale()); + + // reload decorator service (TODO Check if this is necessary) + getContext().reloadDecoratorService(); + + // close reload + getHandler().reloadUI(); + } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractChangeScreenAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/AbstractChangeScreenAction.java similarity index 98% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractChangeScreenAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/AbstractChangeScreenAction.java index 0ccd338..fbb743c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractChangeScreenAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/AbstractChangeScreenAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractMainUITuttiAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/AbstractMainUITuttiAction.java similarity index 83% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractMainUITuttiAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/AbstractMainUITuttiAction.java index 7b344ac..36e4512 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractMainUITuttiAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/AbstractMainUITuttiAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L @@ -23,6 +23,7 @@ package fr.ifremer.tutti.ui.swing.action; */ import fr.ifremer.tutti.ui.swing.TuttiUIContext; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.MainUI; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; @@ -30,7 +31,7 @@ import fr.ifremer.tutti.ui.swing.content.MainUIHandler; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public abstract class AbstractMainUITuttiAction extends AbstractTuttiAction<TuttiUIContext, MainUI, MainUIHandler> { +public abstract class AbstractMainUITuttiAction extends LongActionSupport<TuttiUIContext, MainUI, MainUIHandler> { protected AbstractMainUITuttiAction(MainUIHandler handler, boolean hideBody) { diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ChangeToLocaleFRAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ChangeToLocaleFRAction.java similarity index 95% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ChangeToLocaleFRAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ChangeToLocaleFRAction.java index 8b260fa..a6579f5 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ChangeToLocaleFRAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ChangeToLocaleFRAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ChangeToLocaleUKAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ChangeToLocaleUKAction.java similarity index 95% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ChangeToLocaleUKAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ChangeToLocaleUKAction.java index 92acf4b..6d414be 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ChangeToLocaleUKAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ChangeToLocaleUKAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CloseApplicationAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/CloseApplicationAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CloseApplicationAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/CloseApplicationAction.java index 25cb5d3..c0a15cd 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CloseApplicationAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/CloseApplicationAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ConnectIchtyometerAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ConnectIchtyometerAction.java similarity index 98% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ConnectIchtyometerAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ConnectIchtyometerAction.java index 9eefb2c..9bc5aaa 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ConnectIchtyometerAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ConnectIchtyometerAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/DisconnectIchtyometerAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/DisconnectIchtyometerAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/DisconnectIchtyometerAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/DisconnectIchtyometerAction.java index 437a698..e33555c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/DisconnectIchtyometerAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/DisconnectIchtyometerAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditSelectedCruiseCatchesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/EditCatchesForSelectedCruiseAction.java similarity index 85% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditSelectedCruiseCatchesAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/EditCatchesForSelectedCruiseAction.java index 830d229..88fdd74 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditSelectedCruiseCatchesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/EditCatchesForSelectedCruiseAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L @@ -35,13 +35,13 @@ import org.apache.commons.logging.LogFactory; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class EditSelectedCruiseCatchesAction extends AbstractChangeScreenAction { +public class EditCatchesForSelectedCruiseAction extends AbstractChangeScreenAction { /** Logger. */ private static final Log log = - LogFactory.getLog(EditSelectedCruiseCatchesAction.class); + LogFactory.getLog(EditCatchesForSelectedCruiseAction.class); - public EditSelectedCruiseCatchesAction(MainUIHandler handler) { + public EditCatchesForSelectedCruiseAction(MainUIHandler handler) { super(handler, true, TuttiScreen.EDIT_FISHING_OPERATION); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditSelectedCruiseAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/EditSelectedCruiseAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditSelectedCruiseAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/EditSelectedCruiseAction.java index f070b36..3f18425 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditSelectedCruiseAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/EditSelectedCruiseAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditSelectedProgramAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/EditSelectedProgramAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditSelectedProgramAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/EditSelectedProgramAction.java index 9f48230..f76d9ee 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditSelectedProgramAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/EditSelectedProgramAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditSelectedProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/EditSelectedProtocolAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditSelectedProtocolAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/EditSelectedProtocolAction.java index 881fab4..a99f797 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditSelectedProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/EditSelectedProtocolAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/GoToPreviousScreenAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/GoToPreviousScreenAction.java similarity index 90% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/GoToPreviousScreenAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/GoToPreviousScreenAction.java index 6039b3e..35e9973 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/GoToPreviousScreenAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/GoToPreviousScreenAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L @@ -23,6 +23,7 @@ package fr.ifremer.tutti.ui.swing.action; */ import fr.ifremer.tutti.ui.swing.content.MainUIHandler; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractChangeScreenAction; import static org.nuiton.i18n.I18n.t; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/GotoSiteAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/GotoSiteAction.java new file mode 100644 index 0000000..2f6ac3f --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/GotoSiteAction.java @@ -0,0 +1,43 @@ +package fr.ifremer.tutti.ui.swing.content.actions; + +import fr.ifremer.tutti.TuttiConfiguration; +import fr.ifremer.tutti.ui.swing.content.MainUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import java.net.URL; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class GotoSiteAction extends SimpleActionSupport<MainUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(GotoSiteAction.class); + + private static final long serialVersionUID = 1L; + + public GotoSiteAction(MainUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(MainUI ui) { + + TuttiConfiguration config = ui.getModel().getConfig(); + + URL siteURL = config.getSiteUrl(); + + if (log.isInfoEnabled()) { + log.info("goto " + siteURL); + } + TuttiUIUtil.openLink(siteURL); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ManageDbAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/OpenDbScreenAction.java similarity index 85% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ManageDbAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/OpenDbScreenAction.java index f83b3f5..a2ee6f7 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ManageDbAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/OpenDbScreenAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L @@ -31,9 +31,9 @@ import fr.ifremer.tutti.ui.swing.content.MainUIHandler; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ManageDbAction extends AbstractChangeScreenAction { +public class OpenDbScreenAction extends AbstractChangeScreenAction { - public ManageDbAction(MainUIHandler handler) { + public OpenDbScreenAction(MainUIHandler handler) { super(handler, true, TuttiScreen.MANAGE_DB); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectCruiseAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/OpenHomeScreenAction.java similarity index 85% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectCruiseAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/OpenHomeScreenAction.java index 0321a13..3f3b3cb 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectCruiseAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/OpenHomeScreenAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L @@ -31,9 +31,9 @@ import fr.ifremer.tutti.ui.swing.content.MainUIHandler; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class SelectCruiseAction extends AbstractChangeScreenAction { +public class OpenHomeScreenAction extends AbstractChangeScreenAction { - public SelectCruiseAction(MainUIHandler handler) { + public OpenHomeScreenAction(MainUIHandler handler) { super(handler, true, TuttiScreen.SELECT_CRUISE); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ShowReportAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/OpenReportScreenAction.java similarity index 82% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ShowReportAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/OpenReportScreenAction.java index 1878519..042eaf9 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ShowReportAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/OpenReportScreenAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L @@ -33,12 +33,12 @@ import org.apache.commons.logging.LogFactory; * @author tchemit <chemit@codelutin.com> * @since 2.9 */ -public class ShowReportAction extends AbstractChangeScreenAction { +public class OpenReportScreenAction extends AbstractChangeScreenAction { /** Logger. */ - private static final Log log = LogFactory.getLog(ShowReportAction.class); + private static final Log log = LogFactory.getLog(OpenReportScreenAction.class); - public ShowReportAction(MainUIHandler handler) { + public OpenReportScreenAction(MainUIHandler handler) { super(handler, true, TuttiScreen.REPORT); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditSampleCategoryModelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/OpenSampleCategoryModelScreenAction.java similarity index 88% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditSampleCategoryModelAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/OpenSampleCategoryModelScreenAction.java index 3697614..0b74bf8 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditSampleCategoryModelAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/OpenSampleCategoryModelScreenAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L @@ -33,9 +33,9 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 2.4 */ -public class EditSampleCategoryModelAction extends AbstractChangeScreenAction { +public class OpenSampleCategoryModelScreenAction extends AbstractChangeScreenAction { - public EditSampleCategoryModelAction(MainUIHandler handler) { + public OpenSampleCategoryModelScreenAction(MainUIHandler handler) { super(handler, true, TuttiScreen.EDIT_SAMPLE_CATEGORY_MODEL); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportTemporaryReferentialAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/OpenTemporaryReferentialScreenAction.java similarity index 90% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportTemporaryReferentialAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/OpenTemporaryReferentialScreenAction.java index e3ae3c5..a7d4a77 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportTemporaryReferentialAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/OpenTemporaryReferentialScreenAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L @@ -35,9 +35,9 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ImportTemporaryReferentialAction extends AbstractChangeScreenAction { +public class OpenTemporaryReferentialScreenAction extends AbstractChangeScreenAction { - public ImportTemporaryReferentialAction(MainUIHandler handler) { + public OpenTemporaryReferentialScreenAction(MainUIHandler handler) { super(handler, true, TuttiScreen.IMPORT_TEMPORARY_REFERENTIAL); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ShowAboutAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ShowAboutAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ShowAboutAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ShowAboutAction.java index 07ef9d9..f20ae7d 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ShowAboutAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ShowAboutAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L @@ -27,7 +27,11 @@ import com.google.common.collect.Lists; import com.google.common.collect.Maps; import fr.ifremer.tutti.TuttiConfiguration; import fr.ifremer.tutti.ui.swing.TuttiUIContext; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; +import fr.ifremer.tutti.ui.swing.update.actions.UpdateApplicationAction; +import fr.ifremer.tutti.ui.swing.content.db.actions.UpdateDbAction; +import fr.ifremer.tutti.ui.swing.update.actions.UpdateReportAction; import fr.ifremer.tutti.ui.swing.updater.UpdateModule; import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; import jaxx.runtime.swing.AboutPanel; @@ -308,7 +312,7 @@ public class ShowAboutAction extends AbstractMainUITuttiAction { UpdateModule updateModuleToUpdate = UpdateModule.valueOf(appType); - AbstractTuttiAction action; + LongActionSupport action; switch (updateModuleToUpdate) { diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ShowConfigAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ShowConfigAction.java similarity index 95% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ShowConfigAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ShowConfigAction.java index 9fee2cf..301ffaa 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ShowConfigAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ShowConfigAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ShowHelpAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ShowHelpAction.java new file mode 100644 index 0000000..eeacf71 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ShowHelpAction.java @@ -0,0 +1,26 @@ +package fr.ifremer.tutti.ui.swing.content.actions; + +import fr.ifremer.tutti.ui.swing.content.MainUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class ShowHelpAction extends SimpleActionSupport<MainUI> { + + private static final long serialVersionUID = 1L; + + public ShowHelpAction(MainUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(MainUI ui) { + + ui.getModel().showHelp(ui, ui.getBroker(), null); + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/StartAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/StartAction.java similarity index 91% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/StartAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/StartAction.java index 6929daa..0d7b7f2 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/StartAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/StartAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L @@ -24,6 +24,9 @@ package fr.ifremer.tutti.ui.swing.action; import fr.ifremer.tutti.ui.swing.TuttiUIContext; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; +import fr.ifremer.tutti.ui.swing.content.db.actions.ImportDbAction; +import fr.ifremer.tutti.ui.swing.content.db.actions.InstallDbAction; +import fr.ifremer.tutti.ui.swing.content.db.actions.OpenDbAction; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.nuiton.jaxx.application.ApplicationIOUtil; @@ -112,7 +115,7 @@ public class StartAction extends AbstractMainUITuttiAction { // db already opened (happens when reloading ui) // just go to select cruise screen - SelectCruiseAction action = getContext().getActionFactory().createLogicAction(handler, SelectCruiseAction.class); + OpenHomeScreenAction action = getContext().getActionFactory().createLogicAction(handler, OpenHomeScreenAction.class); action.setSkipCheckCurrentScreen(true); action.setActionDescription(getUI().getMenuActionSelectCruise().getToolTipText()); delegateAction = action; @@ -133,7 +136,7 @@ public class StartAction extends AbstractMainUITuttiAction { context.clearDbContext(); // go to manage db screen (to install db) - ManageDbAction action = getContext().getActionFactory().createLogicAction(handler, ManageDbAction.class); + OpenDbScreenAction action = getContext().getActionFactory().createLogicAction(handler, OpenDbScreenAction.class); action.setSkipCheckCurrentScreen(true); delegateAction = action; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ValidateSelectedCruiseCatchesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ValidateSelectedCruiseAction.java similarity index 86% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ValidateSelectedCruiseCatchesAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ValidateSelectedCruiseAction.java index 87da68a..86acf47 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ValidateSelectedCruiseCatchesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ValidateSelectedCruiseAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.actions; /* * #%L @@ -35,13 +35,13 @@ import org.apache.commons.logging.LogFactory; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ValidateSelectedCruiseCatchesAction extends AbstractChangeScreenAction { +public class ValidateSelectedCruiseAction extends AbstractChangeScreenAction { /** Logger. */ private static final Log log = - LogFactory.getLog(ValidateSelectedCruiseCatchesAction.class); + LogFactory.getLog(ValidateSelectedCruiseAction.class); - public ValidateSelectedCruiseCatchesAction(MainUIHandler handler) { + public ValidateSelectedCruiseAction(MainUIHandler handler) { super(handler, true, TuttiScreen.VALIDATE_CRUISE); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUI.css index 680fa00..fa97457 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUI.css @@ -42,6 +42,8 @@ BeanFilterableComboBox { #addRow { actionIcon: add; enabled: {availableCaracteristicsComboBox.getSelectedItem() != null}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.category.actions.AddSampleCategoryRowAction.class}; + _help: {"tutti.editSampleCategoryModel.action.addRow.help"}; } #removeEntryMenu { @@ -50,6 +52,7 @@ BeanFilterableComboBox { toolTipText: "tutti.editSampleCategoryModel.action.removeEntry.tip"; i18nMnemonic: "tutti.editSampleCategoryModel.action.removeEntry.mnemonic"; enabled: {model.isRemoveEntryEnabled()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.category.actions.RemoveSampleCategoryRowAction.class}; _help: {"tutti.editSampleCategoryModel.action.removeEntry.help"}; } @@ -60,6 +63,7 @@ BeanFilterableComboBox { toolTipText: "tutti.editSampleCategoryModel.action.moveUpEntry.tip"; i18nMnemonic: "tutti.editSampleCategoryModel.action.moveUpEntry.mnemonic"; enabled: {model.isMoveUpEntryEnabled()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.category.actions.MoveUpSampleCategoryRowAction.class}; _help: {"tutti.editSampleCategoryModel.action.moveUpEntry.help"}; } @@ -69,6 +73,7 @@ BeanFilterableComboBox { toolTipText: "tutti.editSampleCategoryModel.action.moveDownEntry.tip"; i18nMnemonic: "tutti.editSampleCategoryModel.action.moveDownEntry.mnemonic"; enabled: {model.isMoveDownEntryEnabled()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.category.actions.MoveDownSampleCategoryRowAction.class}; _help: {"tutti.editSampleCategoryModel.action.moveDownEntry.help"}; } @@ -77,7 +82,7 @@ BeanFilterableComboBox { text: "tutti.editSampleCategoryModel.action.close"; toolTipText: "tutti.editSampleCategoryModel.action.close.tip"; i18nMnemonic: "tutti.editSampleCategoryModel.action.close.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SelectCruiseAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.OpenHomeScreenAction.class}; _help: {"tutti.editSampleCategoryModel.action.close.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUI.jaxx index 7a94605..5a2de42 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUI.jaxx @@ -55,12 +55,9 @@ public EditSampleCategoryModelUI(TuttiUI parentUI) { constructorParams='"tutti.editSampleCategoryModel.help"'/> <JPopupMenu id='tablePopup'> - <JMenuItem id='removeEntryMenu' - onActionPerformed='handler.removeEntry()'/> - <JMenuItem id='moveUpEntryMenu' - onActionPerformed='handler.moveUpEntry()'/> - <JMenuItem id='moveDownEntryMenu' - onActionPerformed='handler.moveDownEntry()'/> + <JMenuItem id='removeEntryMenu'/> + <JMenuItem id='moveUpEntryMenu'/> + <JMenuItem id='moveDownEntryMenu'/> </JPopupMenu> <Table> @@ -72,7 +69,7 @@ public EditSampleCategoryModelUI(TuttiUI parentUI) { genericType='Caracteristic'/> </cell> <cell fill='both'> - <JButton id='addRow' onActionPerformed='handler.addCaracteristic()'/> + <JButton id='addRow'/> </cell> </row> <row fill='both' weighty='1'> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUIHandler.java index 25cd449..e0fd9ff 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUIHandler.java @@ -22,7 +22,6 @@ package fr.ifremer.tutti.ui.swing.content.category; * #L% */ -import com.google.common.base.Preconditions; import com.google.common.collect.Lists; import com.google.common.collect.Sets; import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel; @@ -30,8 +29,6 @@ import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModels; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor; import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableUIHandler; -import jaxx.runtime.SwingUtil; -import jaxx.runtime.swing.editor.bean.BeanFilterableComboBox; import jaxx.runtime.validator.swing.SwingValidator; import org.apache.commons.lang3.StringUtils; import org.apache.commons.logging.Log; @@ -72,75 +69,75 @@ public class EditSampleCategoryModelUIHandler extends AbstractTuttiTableUIHandle //-- Public methods --// //------------------------------------------------------------------------// - public void addCaracteristic() { - BeanFilterableComboBox<Caracteristic> keyCombo = ui.getAvailableCaracteristicsComboBox(); - Caracteristic selectedItem = (Caracteristic) keyCombo.getSelectedItem(); - - getModel().removeCaracteristic(selectedItem); - - EditSampleCategoryModelTableModel tableModel = getTableModel(); - - EditSampleCategoryModelRowModel row = tableModel.createNewRow(); - row.setCaracteristic(selectedItem); - - tableModel.addNewRow(row); - - recomputeRowValidState(row); - - getModel().setModify(true); - - SwingUtilities.invokeLater(new Runnable() { - @Override - public void run() { - getTable().requestFocus(); - - int rowIndex = getTable().getRowCount() - 1; - - SwingUtil.editCell(getTable(), rowIndex, 1); - } - }); - } - - public void removeEntry() { - int selectedRow = getTable().getSelectedRow(); - Preconditions.checkState(selectedRow > -1); - - // get selected row - EditSampleCategoryModelRowModel entry = - getTableModel().getEntry(selectedRow); - - // get his caracteristic - Caracteristic caracteristic = entry.getCaracteristic(); - - // push it back to model - getModel().addCaracteristic(caracteristic); - - // remove entry from table model - getTableModel().removeRow(selectedRow); - - getModel().setModify(true); - } - - public void moveUpEntry() { - int selectedRow = getTable().getSelectedRow(); - Preconditions.checkState(selectedRow > -1); - - int newRow = selectedRow - 1; - - getTableModel().permuteEntry(newRow, selectedRow); - getTable().getSelectionModel().setSelectionInterval(newRow, newRow); - getModel().setModify(true); - } - - public void moveDownEntry() { - int selectedRow = getTable().getSelectedRow(); - Preconditions.checkState(selectedRow > -1); - int newRow = selectedRow + 1; - - getTableModel().permuteEntry(selectedRow, newRow); - getTable().getSelectionModel().setSelectionInterval(newRow, newRow); - getModel().setModify(true); - } +// public void addCaracteristic() { +// BeanFilterableComboBox<Caracteristic> keyCombo = ui.getAvailableCaracteristicsComboBox(); +// Caracteristic selectedItem = (Caracteristic) keyCombo.getSelectedItem(); +// +// getModel().removeCaracteristic(selectedItem); +// +// EditSampleCategoryModelTableModel tableModel = getTableModel(); +// +// EditSampleCategoryModelRowModel row = tableModel.createNewRow(); +// row.setCaracteristic(selectedItem); +// +// tableModel.addNewRow(row); +// +// recomputeRowValidState(row); +// +// getModel().setModify(true); +// +// SwingUtilities.invokeLater(new Runnable() { +// @Override +// public void run() { +// getTable().requestFocus(); +// +// int rowIndex = getTable().getRowCount() - 1; +// +// SwingUtil.editCell(getTable(), rowIndex, 1); +// } +// }); +// } + +// public void removeEntry() { +// int selectedRow = getTable().getSelectedRow(); +// Preconditions.checkState(selectedRow > -1); +// +// // get selected row +// EditSampleCategoryModelRowModel entry = +// getTableModel().getEntry(selectedRow); +// +// // get his caracteristic +// Caracteristic caracteristic = entry.getCaracteristic(); +// +// // push it back to model +// getModel().addCaracteristic(caracteristic); +// +// // remove entry from table model +// getTableModel().removeRow(selectedRow); +// +// getModel().setModify(true); +// } + +// public void moveUpEntry() { +// int selectedRow = getTable().getSelectedRow(); +// Preconditions.checkState(selectedRow > -1); +// +// int newRow = selectedRow - 1; +// +// getTableModel().permuteEntry(newRow, selectedRow); +// getTable().getSelectionModel().setSelectionInterval(newRow, newRow); +// getModel().setModify(true); +// } + +// public void moveDownEntry() { +// int selectedRow = getTable().getSelectedRow(); +// Preconditions.checkState(selectedRow > -1); +// int newRow = selectedRow + 1; +// +// getTableModel().permuteEntry(selectedRow, newRow); +// getTable().getSelectionModel().setSelectionInterval(newRow, newRow); +// getModel().setModify(true); +// } //------------------------------------------------------------------------// //-- AbstractTuttiTableUIHandler methods --// diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/AddSampleCategoryRowAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/AddSampleCategoryRowAction.java new file mode 100644 index 0000000..5e95260 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/AddSampleCategoryRowAction.java @@ -0,0 +1,63 @@ +package fr.ifremer.tutti.ui.swing.content.category.actions; + +import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelRowModel; +import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelTableModel; +import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelUI; +import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import jaxx.runtime.SwingUtil; +import jaxx.runtime.swing.editor.bean.BeanFilterableComboBox; + +import javax.swing.SwingUtilities; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class AddSampleCategoryRowAction extends SimpleActionSupport<EditSampleCategoryModelUI> { + + private static final long serialVersionUID = 1L; + + public AddSampleCategoryRowAction(EditSampleCategoryModelUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(final EditSampleCategoryModelUI ui) { + + BeanFilterableComboBox<Caracteristic> keyCombo = ui.getAvailableCaracteristicsComboBox(); + Caracteristic selectedItem = (Caracteristic) keyCombo.getSelectedItem(); + + EditSampleCategoryModelUIModel model = ui.getModel(); + + model.removeCaracteristic(selectedItem); + + EditSampleCategoryModelTableModel tableModel = ui.getHandler().getTableModel(); + + EditSampleCategoryModelRowModel row = tableModel.createNewRow(); + row.setCaracteristic(selectedItem); + + tableModel.addNewRow(row); + + row.setValid(false); + + model.addRowInError(row); + model.setModify(true); + + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + ui.getTable().requestFocus(); + + int rowIndex = ui.getTable().getRowCount() - 1; + + SwingUtil.editCell(ui.getTable(), rowIndex, 1); + } + }); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/ExportSampleCategoryModelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/ExportSampleCategoryModelAction.java index ad5d8c5..891e6e6 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/ExportSampleCategoryModelAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/ExportSampleCategoryModelAction.java @@ -26,8 +26,8 @@ package fr.ifremer.tutti.ui.swing.content.category.actions; import com.google.common.base.Preconditions; import fr.ifremer.tutti.service.genericformat.GenericFormatExportService; -import fr.ifremer.tutti.ui.swing.action.AbstractTuttiAction; -import fr.ifremer.tutti.ui.swing.action.ExportExistingTemporaryGearAction; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; +import fr.ifremer.tutti.ui.swing.content.referential.actions.ExportExistingTemporaryGearAction; import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelUI; import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelUIHandler; import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelUIModel; @@ -44,7 +44,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit - chemit@codelutin.com * @since 3.14 */ -public class ExportSampleCategoryModelAction extends AbstractTuttiAction<EditSampleCategoryModelUIModel, EditSampleCategoryModelUI, EditSampleCategoryModelUIHandler> { +public class ExportSampleCategoryModelAction extends LongActionSupport<EditSampleCategoryModelUIModel, EditSampleCategoryModelUI, EditSampleCategoryModelUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/MoveDownSampleCategoryRowAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/MoveDownSampleCategoryRowAction.java new file mode 100644 index 0000000..d9bd716 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/MoveDownSampleCategoryRowAction.java @@ -0,0 +1,34 @@ +package fr.ifremer.tutti.ui.swing.content.category.actions; + +import com.google.common.base.Preconditions; +import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class MoveDownSampleCategoryRowAction extends SimpleActionSupport<EditSampleCategoryModelUI> { + + private static final long serialVersionUID = 1L; + + public MoveDownSampleCategoryRowAction(EditSampleCategoryModelUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(EditSampleCategoryModelUI ui) { + + int selectedRow = ui.getTable().getSelectedRow(); + Preconditions.checkState(selectedRow > -1); + int newRow = selectedRow + 1; + + ui.getHandler().getTableModel().permuteEntry(selectedRow, newRow); + ui.getTable().getSelectionModel().setSelectionInterval(newRow, newRow); + ui.getModel().setModify(true); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/MoveUpSampleCategoryRowAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/MoveUpSampleCategoryRowAction.java new file mode 100644 index 0000000..4ddff65 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/MoveUpSampleCategoryRowAction.java @@ -0,0 +1,35 @@ +package fr.ifremer.tutti.ui.swing.content.category.actions; + +import com.google.common.base.Preconditions; +import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class MoveUpSampleCategoryRowAction extends SimpleActionSupport<EditSampleCategoryModelUI> { + + private static final long serialVersionUID = 1L; + + public MoveUpSampleCategoryRowAction(EditSampleCategoryModelUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(EditSampleCategoryModelUI ui) { + + int selectedRow = ui.getTable().getSelectedRow(); + Preconditions.checkState(selectedRow > -1); + + int newRow = selectedRow - 1; + + ui.getHandler().getTableModel().permuteEntry(newRow, selectedRow); + ui.getTable().getSelectionModel().setSelectionInterval(newRow, newRow); + ui.getModel().setModify(true); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/RemoveSampleCategoryRowAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/RemoveSampleCategoryRowAction.java new file mode 100644 index 0000000..cc68886 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/RemoveSampleCategoryRowAction.java @@ -0,0 +1,51 @@ +package fr.ifremer.tutti.ui.swing.content.category.actions; + +import com.google.common.base.Preconditions; +import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelRowModel; +import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelTableModel; +import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelUI; +import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class RemoveSampleCategoryRowAction extends SimpleActionSupport<EditSampleCategoryModelUI> { + + private static final long serialVersionUID = 1L; + + public RemoveSampleCategoryRowAction(EditSampleCategoryModelUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(EditSampleCategoryModelUI ui) { + + int selectedRow = ui.getTable().getSelectedRow(); + Preconditions.checkState(selectedRow > -1); + + // get selected row + EditSampleCategoryModelTableModel tableModel = ui.getHandler().getTableModel(); + + EditSampleCategoryModelRowModel entry = tableModel.getEntry(selectedRow); + + // get his caracteristic + Caracteristic caracteristic = entry.getCaracteristic(); + + // push it back to model + EditSampleCategoryModelUIModel model = ui.getModel(); + + model.addCaracteristic(caracteristic); + + // remove entry from table model + tableModel.removeRow(selectedRow); + + model.setModify(true); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/SaveSampleCategoryModelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/SaveSampleCategoryModelAction.java index 5724abf..4b8daf1 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/SaveSampleCategoryModelAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/SaveSampleCategoryModelAction.java @@ -23,7 +23,7 @@ package fr.ifremer.tutti.ui.swing.content.category.actions; */ import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel; -import fr.ifremer.tutti.ui.swing.action.AbstractTuttiAction; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelUI; import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelUIHandler; import fr.ifremer.tutti.ui.swing.content.category.EditSampleCategoryModelUIModel; @@ -38,7 +38,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 2.4 */ -public class SaveSampleCategoryModelAction extends AbstractTuttiAction<EditSampleCategoryModelUIModel, EditSampleCategoryModelUI, EditSampleCategoryModelUIHandler> { +public class SaveSampleCategoryModelAction extends LongActionSupport<EditSampleCategoryModelUIModel, EditSampleCategoryModelUI, EditSampleCategoryModelUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUIHandler.java index 2df788b..37835e2 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUIHandler.java @@ -26,8 +26,8 @@ import fr.ifremer.tutti.TuttiConfiguration; import fr.ifremer.tutti.TuttiConfigurationOption; import fr.ifremer.tutti.type.WeightUnit; import fr.ifremer.tutti.ui.swing.TuttiUIContext; -import fr.ifremer.tutti.ui.swing.action.GoToPreviousScreenAction; -import fr.ifremer.tutti.ui.swing.action.ReloadTuttiAction; +import fr.ifremer.tutti.ui.swing.content.actions.GoToPreviousScreenAction; +import fr.ifremer.tutti.ui.swing.content.config.actions.ReloadTuttiAction; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; import fr.ifremer.tutti.ui.swing.util.editor.TuttiLocationTableCell; import fr.ifremer.tutti.ui.swing.util.editor.VesselTableCell; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReloadTuttiAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/actions/ReloadTuttiAction.java similarity index 91% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReloadTuttiAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/actions/ReloadTuttiAction.java index 9d7d96b..f8a5637 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReloadTuttiAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/actions/ReloadTuttiAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.config.actions; /* * #%L @@ -23,6 +23,7 @@ package fr.ifremer.tutti.ui.swing.action; */ import fr.ifremer.tutti.ui.swing.RunTutti; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import static org.nuiton.i18n.I18n.t; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUI.css index 9e34c20..398bd25 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUI.css @@ -26,6 +26,10 @@ JToolBar { borderPainted: false; } +JRadioButton { + _skipAction: true; +} + BeanFilterableComboBox { showReset: true; bean: {model}; @@ -63,7 +67,7 @@ JTextField { text: "tutti.editCruise.action.editGearCaracteristics"; toolTipText: "tutti.editCruise.action.editGearCaracteristics.tip"; enabled: {model.isCanEditGearCatacteristic()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.EditGearCaracteristicsAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.cruise.actions.EditGearCaracteristicsAction.class}; _help: {"tutti.editCruise.action.editGearCaracteristics.help"}; } @@ -72,7 +76,7 @@ JTextField { text: "tutti.editCruise.action.viewGearCaracteristics"; toolTipText: "tutti.editCruise.action.viewGearCaracteristics.tip"; enabled: {model.isCanShowGearCatacteristic()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ViewGearCaracteristicsAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.cruise.actions.ViewGearCaracteristicsAction.class}; _help: {"tutti.editCruise.action.viewGearCaracteristics.help"}; } @@ -288,10 +292,19 @@ JTextField { _validatorLabel: {t("tutti.editCruise.field.comment")}; } +#nameResetButton { + actionIcon: reset; + focusable: false; + _skipAction: true; + toolTipText: "tutti.editCruise.action.resetName.tip"; + _help: {"tutti.editCruise.action.resetName.help"}; +} + #surveyPartResetButton { actionIcon: reset; + focusable: false; + _skipAction: true; toolTipText: "tutti.editCruise.action.resetSurveyPart.tip"; - i18nMnemonic: "tutti.editCruise.action.resetSurveyPart.mnemonic"; _help: {"tutti.editCruise.action.resetSurveyPart.help"}; } @@ -300,7 +313,7 @@ JTextField { text: "tutti.editCruise.action.saveCruise"; toolTipText: "tutti.editCruise.action.saveCruise.tip"; i18nMnemonic: "tutti.editCruise.action.saveCruise.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SaveCruiseAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.cruise.actions.SaveCruiseAction.class}; enabled: {model.isModify() && model.isValid()}; _help: {"tutti.editCruise.action.save.help"}; } @@ -310,7 +323,7 @@ JTextField { text: "tutti.editCruise.action.resetCruise"; toolTipText: "tutti.editCruise.action.resetCruise.tip"; i18nMnemonic: "tutti.editCruise.action.resetCruise.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ResetCruiseAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.cruise.actions.ResetCruiseAction.class}; enabled: {model.isModify() && !model.isCreate()}; _help: {"tutti.editCruise.action.reset.help"}; } @@ -320,7 +333,7 @@ JTextField { text: "tutti.editCruise.action.closeEditCruise"; toolTipText: "tutti.editCruise.action.closeEditCruise.tip"; i18nMnemonic: "tutti.editCruise.action.closeEditCruise.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SelectCruiseAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.OpenHomeScreenAction.class}; _help: {"tutti.editCruise.action.close.help"}; } @@ -330,6 +343,7 @@ JTextField { toolTipText: "tutti.editCruise.action.generateName.tip"; i18nMnemonic: "tutti.editCruise.action.generateCampaignName.mnemonic"; enabled: {model.isCanGenerateName()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.cruise.actions.GenerateCampaignNameAction.class}; _help: {"tutti.editCruise.action.generateName.help"}; } @@ -340,6 +354,7 @@ JTextField { } #attachmentsButton { + focusable: false; enabled: {model.getId() != null}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUI.jaxx index 5258cc7..422437a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUI.jaxx @@ -168,22 +168,25 @@ </cell> </row> - <!-- cruise name / multirigNumber --> + <!-- cruise name --> <row> <cell> <JLabel id='nameLabel'/> </cell> <cell> - <JTextField id='nameField' - onKeyReleased='handler.setText(event, "name")'/> + <JPanel layout="{new BorderLayout()}"> + <JToolBar constraints="BorderLayout.WEST"> + <JButton id='nameResetButton' onActionPerformed="model.setName(null)"/> + </JToolBar> + <JTextField id='nameField' onKeyReleased='handler.setText(event, "name")'/> + </JPanel> </cell> <cell columns='2'> - <JButton id='generateNameButton' - onActionPerformed='handler.generateCampaignName()'/> + <JButton id='generateNameButton'/> </cell> </row> - <!-- cruise name / multirigNumber --> + <!-- multirigNumber --> <row> <cell> <JLabel id='multirigNumberLabel'/> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUIHandler.java index 3bcd803..547154f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUIHandler.java @@ -453,12 +453,12 @@ public class EditCruiseUIHandler extends AbstractTuttiUIHandler<EditCruiseUIMode return ui.getValidator(); } - public void generateCampaignName() { - - EditCruiseUIModel model = getModel(); - String name = model.getGeneratedCampaignName(); - model.setName(name); - } +// public void generateCampaignName() { +// +// EditCruiseUIModel model = getModel(); +// String name = model.getGeneratedCampaignName(); +// model.setName(name); +// } public static final JAXXContextEntryDef<GearWithOriginalRankOrder> GEAR_EDIT_CONTEXT = JAXXUtil.newContextEntryDef("editGear", GearWithOriginalRankOrder.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUI.css index 509d805..256f663 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUI.css @@ -33,6 +33,7 @@ BeanFilterableComboBox { actionIcon: add; enabled: {model.isEditable() && newRowKey.getSelectedItem() != null}; visible: {model.isEditable()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.cruise.actions.GearCaracteristicAddRowAction.class}; } #gearCaracteristicsEditorTable { @@ -49,6 +50,7 @@ BeanFilterableComboBox { toolTipText: "tutti.editIndividualObservationCaracteristics.action.removeCaracteristic.tip"; i18nMnemonic: "tutti.editIndividualObservationCaracteristics.action.removeCaracteristic.mnemonic"; enabled: {model.isEditable() && model.isRemoveCaracteristicEnabled()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.cruise.actions.GearCaracteristicRemoveRowAction.class}; } #cancelButton { @@ -56,6 +58,7 @@ BeanFilterableComboBox { text: "tutti.editIndividualObservationCaracteristics.action.cancel"; toolTipText: "tutti.editIndividualObservationCaracteristics.action.cancel.tip"; i18nMnemonic: "tutti.editIndividualObservationCaracteristics.action.cancel.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.cruise.actions.GearCaracteristicCancelAction.class}; _help: {"tutti.editIndividualObservationCaracteristics.action.cancel.help"}; } @@ -65,5 +68,6 @@ BeanFilterableComboBox { toolTipText: "tutti.editIndividualObservationCaracteristics.action.save.tip"; i18nMnemonic: "tutti.editIndividualObservationCaracteristics.action.save.mnemonic"; enabled: {model.isEditable() && model.isValid()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.cruise.actions.GearCaracteristicSaveAction.class}; _help: {"tutti.editIndividualObservationCaracteristics.action.save.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUI.jaxx index 121cdf3..bf2391c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUI.jaxx @@ -45,8 +45,7 @@ public GearCaracteristicsEditorUI(TuttiUI parentUI) { ]]></script> <JPopupMenu id='tablePopup'> - <JMenuItem id='removeCaracteristicMenu' - onActionPerformed='handler.removeCaracteristic()'/> + <JMenuItem id='removeCaracteristicMenu'/> </JPopupMenu> <row fill='both'> @@ -55,7 +54,7 @@ public GearCaracteristicsEditorUI(TuttiUI parentUI) { genericType='Caracteristic'/> </cell> <cell fill='both'> - <JButton id='addRow' onActionPerformed='handler.addRow()'/> + <JButton id='addRow'/> </cell> </row> <row fill='both' weighty='1' weightx='1'> @@ -72,8 +71,8 @@ public GearCaracteristicsEditorUI(TuttiUI parentUI) { <row fill='both'> <cell fill='both' columns='2'> <JPanel layout='{new GridLayout(1, 0)}'> - <JButton id='cancelButton' onActionPerformed='handler.cancel()'/> - <JButton id='saveButton' onActionPerformed='handler.save()'/> + <JButton id='cancelButton'/> + <JButton id='saveButton'/> </JPanel> </cell> </row> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUIHandler.java index bab2b60..023c517 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUIHandler.java @@ -24,7 +24,6 @@ package fr.ifremer.tutti.ui.swing.content.cruise; import com.google.common.base.Preconditions; import com.google.common.collect.Lists; -import org.nuiton.jaxx.application.swing.util.Cancelable; import fr.ifremer.tutti.persistence.entities.CaracteristicMap; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.persistence.entities.referential.Gear; @@ -51,7 +50,7 @@ import java.util.List; */ public class GearCaracteristicsEditorUIHandler extends AbstractTuttiTableUIHandler<GearCaracteristicsEditorRowModel, GearCaracteristicsEditorUIModel, GearCaracteristicsEditorUI> - implements Cancelable { + { private final static Log log = LogFactory.getLog(GearCaracteristicsEditorUIHandler.class); @@ -197,16 +196,16 @@ public class GearCaracteristicsEditorUIHandler return null; } - @Override - public void cancel() { - - if (log.isDebugEnabled()) { - log.debug("Cancel UI " + ui); - } - - // close dialog - closeUI(ui); - } +// @Override +// public void cancel() { +// +// if (log.isDebugEnabled()) { +// log.debug("Cancel UI " + ui); +// } +// +// // close dialog +// closeUI(ui); +// } protected BeanFilterableComboBox<Caracteristic> getKeyCombo() { return ui.getNewRowKey(); @@ -227,67 +226,67 @@ public class GearCaracteristicsEditorUIHandler //------------------------------------------------------------------------// /** Adds a row with the parameter selected in the combo box */ - public void addRow() { - BeanFilterableComboBox<Caracteristic> keyCombo = getKeyCombo(); - Caracteristic selectedItem = (Caracteristic) keyCombo.getSelectedItem(); - GearCaracteristicsEditorTableModel tableModel = getTableModel(); - - GearCaracteristicsEditorRowModel row = tableModel.createNewRow(); - row.setKey(selectedItem); -// tableModel.addNewRow(row); - getModel().getRows().add(row); - - int rowIndex = tableModel.getRowCount() - 1; - tableModel.fireTableRowsInserted(rowIndex, rowIndex); - - keyCombo.getHandler().removeItem(selectedItem); - - GearCaracteristicsEditorUIModel model = getModel(); - model.setModify(true); - recomputeRowValidState(row); - } - - public void removeCaracteristic() { - int rowIndex = getTable().getSelectedRow(); - - Preconditions.checkState( - rowIndex != -1, - "Cant remove caracteristic if no caracteristic selected"); - - GearCaracteristicsEditorRowModel row = getTableModel().getEntry(rowIndex); - - CaracteristicMap caracteristicMap = getModel().getCaracteristicMap(); - if (caracteristicMap != null) { - caracteristicMap.remove(row.getKey()); - } - - //add the row in the combo - BeanFilterableComboBox keyCombo = getKeyCombo(); - keyCombo.addItem(row.getKey()); -// selectFirstInCombo(keyCombo); - keyCombo.getHandler().reset(); - - // remove the row from the model - getModel().getRows().remove(rowIndex); - - // refresh all the table - getTableModel().fireTableRowsDeleted(rowIndex, rowIndex); - - getModel().removeRowInError(row); - } - - public void save() { - - if (log.isDebugEnabled()) { - log.debug("Save UI " + ui); - } - - Gear gear = getModel().getGear(); - gear.setCaracteristics((CaracteristicMap) getModel().getCaracteristicMap().clone()); - getPersistenceService().saveGearCaracteristics(gear, getDataContext().getCruise()); - - closeUI(ui); - } +// public void addRow() { +// BeanFilterableComboBox<Caracteristic> keyCombo = getKeyCombo(); +// Caracteristic selectedItem = (Caracteristic) keyCombo.getSelectedItem(); +// GearCaracteristicsEditorTableModel tableModel = getTableModel(); +// +// GearCaracteristicsEditorRowModel row = tableModel.createNewRow(); +// row.setKey(selectedItem); +//// tableModel.addNewRow(row); +// getModel().getRows().add(row); +// +// int rowIndex = tableModel.getRowCount() - 1; +// tableModel.fireTableRowsInserted(rowIndex, rowIndex); +// +// keyCombo.getHandler().removeItem(selectedItem); +// +// GearCaracteristicsEditorUIModel model = getModel(); +// model.setModify(true); +// recomputeRowValidState(row); +// } + +// public void removeCaracteristic() { +// int rowIndex = getTable().getSelectedRow(); +// +// Preconditions.checkState( +// rowIndex != -1, +// "Cant remove caracteristic if no caracteristic selected"); +// +// GearCaracteristicsEditorRowModel row = getTableModel().getEntry(rowIndex); +// +// CaracteristicMap caracteristicMap = getModel().getCaracteristicMap(); +// if (caracteristicMap != null) { +// caracteristicMap.remove(row.getKey()); +// } +// +// //add the row in the combo +// BeanFilterableComboBox keyCombo = getKeyCombo(); +// keyCombo.addItem(row.getKey()); +//// selectFirstInCombo(keyCombo); +// keyCombo.getHandler().reset(); +// +// // remove the row from the model +// getModel().getRows().remove(rowIndex); +// +// // refresh all the table +// getTableModel().fireTableRowsDeleted(rowIndex, rowIndex); +// +// getModel().removeRowInError(row); +// } + +// public void save() { +// +// if (log.isDebugEnabled()) { +// log.debug("Save UI " + ui); +// } +// +// Gear gear = getModel().getGear(); +// gear.setCaracteristics((CaracteristicMap) getModel().getCaracteristicMap().clone()); +// getPersistenceService().saveGearCaracteristics(gear, getDataContext().getCruise()); +// +// closeUI(ui); +// } protected void editGear(Gear gear) { diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditGearCaracteristicsAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/EditGearCaracteristicsAction.java similarity index 92% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditGearCaracteristicsAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/EditGearCaracteristicsAction.java index fc90c01..c5bf75c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditGearCaracteristicsAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/EditGearCaracteristicsAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.cruise.actions; /* * #%L @@ -26,6 +26,7 @@ import fr.ifremer.tutti.persistence.entities.CaracteristicMap; import fr.ifremer.tutti.persistence.entities.referential.GearWithOriginalRankOrder; import fr.ifremer.tutti.persistence.entities.referential.GearWithOriginalRankOrders; import fr.ifremer.tutti.service.PersistenceService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUI; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUIHandler; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUIModel; @@ -37,7 +38,7 @@ import org.apache.commons.logging.LogFactory; * @author kmorin <kmorin@codelutin.com> * @since 2.1 */ -public class EditGearCaracteristicsAction extends AbstractTuttiAction<EditCruiseUIModel, EditCruiseUI, EditCruiseUIHandler> { +public class EditGearCaracteristicsAction extends LongActionSupport<EditCruiseUIModel, EditCruiseUI, EditCruiseUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GearCaracteristicAddRowAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GearCaracteristicAddRowAction.java new file mode 100644 index 0000000..f298e35 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GearCaracteristicAddRowAction.java @@ -0,0 +1,52 @@ +package fr.ifremer.tutti.ui.swing.content.cruise.actions; + +import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.ui.swing.content.cruise.GearCaracteristicsEditorRowModel; +import fr.ifremer.tutti.ui.swing.content.cruise.GearCaracteristicsEditorTableModel; +import fr.ifremer.tutti.ui.swing.content.cruise.GearCaracteristicsEditorUI; +import fr.ifremer.tutti.ui.swing.content.cruise.GearCaracteristicsEditorUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import jaxx.runtime.swing.editor.bean.BeanFilterableComboBox; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class GearCaracteristicAddRowAction extends SimpleActionSupport<GearCaracteristicsEditorUI> { + + private static final long serialVersionUID = 1L; + + public GearCaracteristicAddRowAction(GearCaracteristicsEditorUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(GearCaracteristicsEditorUI ui) { + + BeanFilterableComboBox<Caracteristic> keyCombo = ui.getNewRowKey(); + + Caracteristic selectedItem = (Caracteristic) keyCombo.getSelectedItem(); + + GearCaracteristicsEditorTableModel tableModel = ui.getHandler().getTableModel(); + GearCaracteristicsEditorUIModel model = ui.getModel(); + + GearCaracteristicsEditorRowModel row = tableModel.createNewRow(); + row.setKey(selectedItem); + model.getRows().add(row); + + int rowIndex = tableModel.getRowCount() - 1; + tableModel.fireTableRowsInserted(rowIndex, rowIndex); + + keyCombo.removeItem(selectedItem); + + + row.setValid(false); + model.addRowInError(row); + + model.setModify(true); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GearCaracteristicCancelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GearCaracteristicCancelAction.java new file mode 100644 index 0000000..21c7481 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GearCaracteristicCancelAction.java @@ -0,0 +1,36 @@ +package fr.ifremer.tutti.ui.swing.content.cruise.actions; + +import fr.ifremer.tutti.ui.swing.content.cruise.GearCaracteristicsEditorUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class GearCaracteristicCancelAction extends SimpleActionSupport<GearCaracteristicsEditorUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(GearCaracteristicCancelAction.class); + + private static final long serialVersionUID = 1L; + + public GearCaracteristicCancelAction(GearCaracteristicsEditorUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(GearCaracteristicsEditorUI ui) { + + if (log.isInfoEnabled()) { + log.info("Cancel edit gear caracteristics."); + } + + ui.getHandler().onCloseUI(); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GearCaracteristicRemoveRowAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GearCaracteristicRemoveRowAction.java new file mode 100644 index 0000000..e1fe162 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GearCaracteristicRemoveRowAction.java @@ -0,0 +1,63 @@ +package fr.ifremer.tutti.ui.swing.content.cruise.actions; + +import com.google.common.base.Preconditions; +import fr.ifremer.tutti.persistence.entities.CaracteristicMap; +import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.ui.swing.content.cruise.GearCaracteristicsEditorRowModel; +import fr.ifremer.tutti.ui.swing.content.cruise.GearCaracteristicsEditorTableModel; +import fr.ifremer.tutti.ui.swing.content.cruise.GearCaracteristicsEditorUI; +import fr.ifremer.tutti.ui.swing.content.cruise.GearCaracteristicsEditorUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import jaxx.runtime.swing.editor.bean.BeanFilterableComboBox; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class GearCaracteristicRemoveRowAction extends SimpleActionSupport<GearCaracteristicsEditorUI> { + + private static final long serialVersionUID = 1L; + + public GearCaracteristicRemoveRowAction(GearCaracteristicsEditorUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(GearCaracteristicsEditorUI ui) { + + int rowIndex = ui.getGearCaracteristicsEditorTable().getSelectedRow(); + + Preconditions.checkState( + rowIndex != -1, + "Cant remove caracteristic if no caracteristic selected"); + + GearCaracteristicsEditorTableModel tableModel = ui.getHandler().getTableModel(); + + GearCaracteristicsEditorRowModel row = tableModel.getEntry(rowIndex); + + GearCaracteristicsEditorUIModel model = ui.getModel(); + + CaracteristicMap caracteristicMap = model.getCaracteristicMap(); + if (caracteristicMap != null) { + caracteristicMap.remove(row.getKey()); + } + + //add the row in the combo + BeanFilterableComboBox<Caracteristic> keyCombo = ui.getNewRowKey(); + keyCombo.addItem(row.getKey()); +// selectFirstInCombo(keyCombo); + keyCombo.getHandler().reset(); + + // remove the row from the model + model.getRows().remove(rowIndex); + + // refresh all the table + tableModel.fireTableRowsDeleted(rowIndex, rowIndex); + + model.removeRowInError(row); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GearCaracteristicSaveAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GearCaracteristicSaveAction.java new file mode 100644 index 0000000..d8f3778 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GearCaracteristicSaveAction.java @@ -0,0 +1,48 @@ +package fr.ifremer.tutti.ui.swing.content.cruise.actions; + +import fr.ifremer.tutti.persistence.entities.CaracteristicMap; +import fr.ifremer.tutti.persistence.entities.referential.Gear; +import fr.ifremer.tutti.ui.swing.content.cruise.GearCaracteristicsEditorUI; +import fr.ifremer.tutti.ui.swing.content.cruise.GearCaracteristicsEditorUIHandler; +import fr.ifremer.tutti.ui.swing.content.cruise.GearCaracteristicsEditorUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class GearCaracteristicSaveAction extends SimpleActionSupport<GearCaracteristicsEditorUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(GearCaracteristicSaveAction.class); + + private static final long serialVersionUID = 1L; + + public GearCaracteristicSaveAction(GearCaracteristicsEditorUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(GearCaracteristicsEditorUI ui) { + + if (log.isInfoEnabled()) { + log.info("Save gear caracteristics."); + } + + GearCaracteristicsEditorUIModel model = ui.getModel(); + + Gear gear = model.getGear(); + gear.setCaracteristics((CaracteristicMap) model.getCaracteristicMap().clone()); + + GearCaracteristicsEditorUIHandler handler = ui.getHandler(); + + handler.getPersistenceService().saveGearCaracteristics(gear, handler.getDataContext().getCruise()); + handler.onCloseUI(); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GenerateCampaignNameAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GenerateCampaignNameAction.java new file mode 100644 index 0000000..71c5b3d --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/GenerateCampaignNameAction.java @@ -0,0 +1,39 @@ +package fr.ifremer.tutti.ui.swing.content.cruise.actions; + +import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUI; +import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class GenerateCampaignNameAction extends SimpleActionSupport<EditCruiseUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(GenerateCampaignNameAction.class); + + private static final long serialVersionUID = 1L; + + public GenerateCampaignNameAction(EditCruiseUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(EditCruiseUI ui) { + + EditCruiseUIModel model = ui.getModel(); + String name = model.getGeneratedCampaignName(); + + if (log.isInfoEnabled()) { + log.info("Generated campaign name: " + name); + } + model.setName(name); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ResetCruiseAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/ResetCruiseAction.java similarity index 88% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ResetCruiseAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/ResetCruiseAction.java index 1203c97..00f14da 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ResetCruiseAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/ResetCruiseAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.cruise.actions; /* * #%L @@ -26,6 +26,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.data.Cruise; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUI; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUIHandler; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUIModel; @@ -38,7 +39,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit - chemit@codelutin.com * @since 3.6 */ -public class ResetCruiseAction extends AbstractTuttiAction<EditCruiseUIModel, EditCruiseUI, EditCruiseUIHandler> { +public class ResetCruiseAction extends LongActionSupport<EditCruiseUIModel, EditCruiseUI, EditCruiseUIHandler> { public ResetCruiseAction(EditCruiseUIHandler handler) { super(handler, true); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveCruiseAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/SaveCruiseAction.java similarity index 96% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveCruiseAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/SaveCruiseAction.java index 3475e17..79a063e 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveCruiseAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/SaveCruiseAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.cruise.actions; /* * #%L @@ -30,6 +30,7 @@ import fr.ifremer.tutti.persistence.entities.referential.GearWithOriginalRankOrd import fr.ifremer.tutti.persistence.entities.referential.GearWithOriginalRankOrders; import fr.ifremer.tutti.service.PersistenceService; import fr.ifremer.tutti.ui.swing.TuttiUIContext; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUI; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUIHandler; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUIModel; @@ -50,7 +51,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <kmorin@codelutin.com> * @since 1.0 */ -public class SaveCruiseAction extends AbstractTuttiAction<EditCruiseUIModel, EditCruiseUI, EditCruiseUIHandler> { +public class SaveCruiseAction extends LongActionSupport<EditCruiseUIModel, EditCruiseUI, EditCruiseUIHandler> { protected PersistenceService persistenceService; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ViewGearCaracteristicsAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/ViewGearCaracteristicsAction.java similarity index 92% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ViewGearCaracteristicsAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/ViewGearCaracteristicsAction.java index 06c7861..656bdb4 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ViewGearCaracteristicsAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/ViewGearCaracteristicsAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.cruise.actions; /* * #%L @@ -26,6 +26,7 @@ import fr.ifremer.tutti.persistence.entities.CaracteristicMap; import fr.ifremer.tutti.persistence.entities.referential.GearWithOriginalRankOrder; import fr.ifremer.tutti.persistence.entities.referential.GearWithOriginalRankOrders; import fr.ifremer.tutti.service.PersistenceService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUI; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUIHandler; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUIModel; @@ -37,7 +38,7 @@ import org.apache.commons.logging.LogFactory; * @author kmorin <kmorin@codelutin.com> * @since 2.1 */ -public class ViewGearCaracteristicsAction extends AbstractTuttiAction<EditCruiseUIModel, EditCruiseUI, EditCruiseUIHandler> { +public class ViewGearCaracteristicsAction extends LongActionSupport<EditCruiseUIModel, EditCruiseUI, EditCruiseUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUI.css index 6e9d448..4f6abc7 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUI.css @@ -41,7 +41,7 @@ text: {handler.getInstallButtonText(model.isDbExist())}; toolTipText: {handler.getInstallButtonTip(model.isDbExist())}; i18nMnemonic: "tutti.dbManager.action.installDb.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.InstallOrReinstallDbAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.db.actions.InstallOrReinstallDbAction.class}; _help: {"tutti.dbManager.action.installDb.help"}; } @@ -49,7 +49,7 @@ actionIcon: import-db; text: "tutti.dbManager.action.importDb"; i18nMnemonic: "tutti.dbManager.action.importDb.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportOrReimportDbAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.db.actions.ImportOrReimportDbAction.class}; toolTipText: "tutti.dbManager.action.importDb.tip"; _help: {"tutti.dbManager.action.importDb.help"}; } @@ -59,7 +59,7 @@ text: "tutti.dbManager.action.openDb"; i18nMnemonic: "tutti.dbManager.action.openDb.mnemonic"; visible: {model.isDbExist() && !model.isDbLoaded()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.OpenDbAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.db.actions.OpenDbAction.class}; toolTipText: "tutti.dbManager.action.openDb.tip"; _help: {"tutti.dbManager.action.openDb.help"}; } @@ -69,7 +69,7 @@ text: "tutti.dbManager.action.upgradeDb"; i18nMnemonic: "tutti.dbManager.action.upgradeDb.mnemonic"; visible: {model.isDbLoaded()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.UpdateDbAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.db.actions.UpdateDbAction.class}; toolTipText: "tutti.dbManager.action.upgradeDb.tip"; _help: {"tutti.dbManager.action.upgradeDb.help"}; } @@ -79,7 +79,7 @@ text: "tutti.dbManager.action.exportDb"; i18nMnemonic: "tutti.dbManager.action.exportDb.mnemonic"; visible: {model.isDbLoaded()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportDbAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.db.actions.ExportDbAction.class}; toolTipText: "tutti.dbManager.action.exportDb.tip"; _help: {"tutti.dbManager.action.exportDb.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CloseDbAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/CloseDbAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CloseDbAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/CloseDbAction.java index 844cb4d..d495116 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CloseDbAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/CloseDbAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.db.actions; /* * #%L @@ -22,6 +22,7 @@ package fr.ifremer.tutti.ui.swing.action; * #L% */ +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import static org.nuiton.i18n.I18n.t; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportAndCleanDbAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ExportAndCleanDbAction.java similarity index 96% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportAndCleanDbAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ExportAndCleanDbAction.java index 473f70b..ec2b172 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportAndCleanDbAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ExportAndCleanDbAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.db.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.ui.swing.RunTutti; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportDbAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ExportDbAction.java similarity index 96% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportDbAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ExportDbAction.java index e6c456a..19538cb 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportDbAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ExportDbAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.db.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.ProgressionModel; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportDbAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ImportDbAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportDbAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ImportDbAction.java index 1ecf686..d175cfb 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportDbAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ImportDbAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.db.actions; /* * #%L @@ -27,7 +27,9 @@ import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.persistence.TuttiPersistence; import fr.ifremer.tutti.persistence.service.UpdateSchemaContextSupport; import fr.ifremer.tutti.service.PersistenceService; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; +import fr.ifremer.tutti.ui.swing.content.actions.OpenHomeScreenAction; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -303,7 +305,7 @@ public class ImportDbAction extends AbstractMainUITuttiAction { // --- change screen // // ------------------------------------------------------------------ // - getActionEngine().runInternalAction(handler, SelectCruiseAction.class); + getActionEngine().runInternalAction(handler, OpenHomeScreenAction.class); } @Override diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportOrReimportDbAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ImportOrReimportDbAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportOrReimportDbAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ImportOrReimportDbAction.java index ee147bd..dafd1a5 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportOrReimportDbAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ImportOrReimportDbAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.db.actions; /* * #%L @@ -22,6 +22,7 @@ package fr.ifremer.tutti.ui.swing.action; * #L% */ +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; /** diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/InstallDbAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/InstallDbAction.java similarity index 96% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/InstallDbAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/InstallDbAction.java index 7434fbd..387c435 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/InstallDbAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/InstallDbAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.db.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.TuttiConfiguration; import fr.ifremer.tutti.persistence.ProgressionModel; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import fr.ifremer.tutti.ui.swing.update.TuttiDbUpdaterCallBack; import fr.ifremer.tutti.ui.swing.update.Updates; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/InstallOrReinstallDbAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/InstallOrReinstallDbAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/InstallOrReinstallDbAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/InstallOrReinstallDbAction.java index 14028fa..927eade 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/InstallOrReinstallDbAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/InstallOrReinstallDbAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.db.actions; /* * #%L @@ -22,6 +22,7 @@ package fr.ifremer.tutti.ui.swing.action; * #L% */ +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; /** diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenDbAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/OpenDbAction.java similarity index 99% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenDbAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/OpenDbAction.java index fd9d9fa..56c1d35 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenDbAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/OpenDbAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.db.actions; /* * #%L @@ -27,6 +27,7 @@ import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.persistence.TuttiPersistence; import fr.ifremer.tutti.persistence.service.UpdateSchemaContextSupport; import fr.ifremer.tutti.ui.swing.TuttiScreen; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import fr.ifremer.tutti.ui.swing.update.TuttiDbUpdaterCallBack; import fr.ifremer.tutti.ui.swing.update.Updates; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReimportDbAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReimportDbAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReimportDbAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReimportDbAction.java index bc5846c..31e8372 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReimportDbAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReimportDbAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.db.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.ui.swing.RunTutti; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import org.nuiton.jaxx.application.ApplicationIOUtil; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReinstallDbAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReinstallDbAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReinstallDbAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReinstallDbAction.java index 1514577..f71874a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReinstallDbAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/ReinstallDbAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.db.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.ui.swing.RunTutti; import fr.ifremer.tutti.ui.swing.TuttiUIContext; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import org.nuiton.jaxx.application.ApplicationIOUtil; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateDbAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/UpdateDbAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateDbAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/UpdateDbAction.java index 03df125..f42417a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateDbAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/actions/UpdateDbAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.db.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import fr.ifremer.tutti.TuttiConfiguration; import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.ui.swing.TuttiUIContext; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import fr.ifremer.tutti.ui.swing.update.TuttiDbUpdaterCallBack; import fr.ifremer.tutti.ui.swing.update.Updates; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUI.css index b832b77..a213507 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/GenericFormatImportUI.css @@ -172,6 +172,6 @@ JTextField { text: "tutti.genericFormatImport.action.closeGenericFormatImport"; toolTipText: "tutti.genericFormatImport.action.closeGenericFormatImport.tip"; i18nMnemonic: "tutti.genericFormatImport.action.closeGenericFormatImport.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SelectCruiseAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.OpenHomeScreenAction.class}; _help: {"tutti.genericFormatImport.action.closeGenericFormatImport.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatImportAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatImportAction.java index b1ca336..bb50b1d 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatImportAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatImportAction.java @@ -28,7 +28,7 @@ import fr.ifremer.tutti.persistence.entities.data.Program; import fr.ifremer.tutti.service.genericformat.GenericFormatImportConfiguration; import fr.ifremer.tutti.service.genericformat.GenericFormatImportResult; import fr.ifremer.tutti.service.genericformat.GenericFormatImportService; -import fr.ifremer.tutti.ui.swing.action.AbstractTuttiAction; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUI; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUIHandler; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUIModel; @@ -51,7 +51,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit - chemit@codelutin.com * @since 3.14 */ -public class GenericFormatImportAction extends AbstractTuttiAction<GenericFormatImportUIModel, GenericFormatImportUI, GenericFormatImportUIHandler> { +public class GenericFormatImportAction extends LongActionSupport<GenericFormatImportUIModel, GenericFormatImportUI, GenericFormatImportUIHandler> { /** Logger. */ private static final Log log = LogFactory.getLog(GenericFormatImportAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatValidateAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatValidateAction.java index 10c2e5c..f7a1276 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatValidateAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatValidateAction.java @@ -28,7 +28,7 @@ import fr.ifremer.tutti.persistence.entities.data.Program; import fr.ifremer.tutti.service.genericformat.GenericFormatImportConfiguration; import fr.ifremer.tutti.service.genericformat.GenericFormatImportService; import fr.ifremer.tutti.service.genericformat.GenericFormatValidateFileResult; -import fr.ifremer.tutti.ui.swing.action.AbstractTuttiAction; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUI; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUIHandler; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUIModel; @@ -47,7 +47,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit - chemit@codelutin.com * @since 3.14 */ -public class GenericFormatValidateAction extends AbstractTuttiAction<GenericFormatImportUIModel, GenericFormatImportUI, GenericFormatImportUIHandler> { +public class GenericFormatValidateAction extends LongActionSupport<GenericFormatImportUIModel, GenericFormatImportUI, GenericFormatImportUIHandler> { /** Logger. */ private static final Log log = LogFactory.getLog(GenericFormatValidateAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/OpenGenericFormatImportReportAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/OpenGenericFormatImportReportAction.java index 220ce1b..2ca431b 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/OpenGenericFormatImportReportAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/OpenGenericFormatImportReportAction.java @@ -24,7 +24,7 @@ package fr.ifremer.tutti.ui.swing.content.genericformat.actions; * #L% */ -import fr.ifremer.tutti.ui.swing.action.AbstractTuttiAction; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUI; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUIHandler; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUIModel; @@ -41,7 +41,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit - chemit@codelutin.com * @since 3.14 */ -public class OpenGenericFormatImportReportAction extends AbstractTuttiAction<GenericFormatImportUIModel, GenericFormatImportUI, GenericFormatImportUIHandler> { +public class OpenGenericFormatImportReportAction extends LongActionSupport<GenericFormatImportUIModel, GenericFormatImportUI, GenericFormatImportUIHandler> { public OpenGenericFormatImportReportAction(GenericFormatImportUIHandler handler) { super(handler, true); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/OpenGenericFormatValidateReportAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/OpenGenericFormatValidateReportAction.java index 6253c03..52c63f2 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/OpenGenericFormatValidateReportAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/OpenGenericFormatValidateReportAction.java @@ -24,7 +24,7 @@ package fr.ifremer.tutti.ui.swing.content.genericformat.actions; * #L% */ -import fr.ifremer.tutti.ui.swing.action.AbstractTuttiAction; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUI; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUIHandler; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUIModel; @@ -41,7 +41,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit - chemit@codelutin.com * @since 3.14 */ -public class OpenGenericFormatValidateReportAction extends AbstractTuttiAction<GenericFormatImportUIModel, GenericFormatImportUI, GenericFormatImportUIHandler> { +public class OpenGenericFormatValidateReportAction extends LongActionSupport<GenericFormatImportUIModel, GenericFormatImportUI, GenericFormatImportUIHandler> { public OpenGenericFormatValidateReportAction(GenericFormatImportUIHandler handler) { super(handler, true); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/SaveGenericFormatImportReportAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/SaveGenericFormatImportReportAction.java index cd7bde1..64a3c98 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/SaveGenericFormatImportReportAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/SaveGenericFormatImportReportAction.java @@ -24,7 +24,7 @@ package fr.ifremer.tutti.ui.swing.content.genericformat.actions; * #L% */ -import fr.ifremer.tutti.ui.swing.action.AbstractTuttiAction; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUI; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUIHandler; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUIModel; @@ -43,7 +43,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit - chemit@codelutin.com * @since 3.14 */ -public class SaveGenericFormatImportReportAction extends AbstractTuttiAction<GenericFormatImportUIModel, GenericFormatImportUI, GenericFormatImportUIHandler> { +public class SaveGenericFormatImportReportAction extends LongActionSupport<GenericFormatImportUIModel, GenericFormatImportUI, GenericFormatImportUIHandler> { private static final DateFormat DF = new SimpleDateFormat("yyy-MM-dd-hh-mm"); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/SaveGenericFormatValidateReportAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/SaveGenericFormatValidateReportAction.java index 331343d..aa67e31 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/SaveGenericFormatValidateReportAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/SaveGenericFormatValidateReportAction.java @@ -24,7 +24,7 @@ package fr.ifremer.tutti.ui.swing.content.genericformat.actions; * #L% */ -import fr.ifremer.tutti.ui.swing.action.AbstractTuttiAction; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUI; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUIHandler; import fr.ifremer.tutti.ui.swing.content.genericformat.GenericFormatImportUIModel; @@ -43,7 +43,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit - chemit@codelutin.com * @since 3.14 */ -public class SaveGenericFormatValidateReportAction extends AbstractTuttiAction<GenericFormatImportUIModel, GenericFormatImportUI, GenericFormatImportUIHandler> { +public class SaveGenericFormatValidateReportAction extends LongActionSupport<GenericFormatImportUIModel, GenericFormatImportUI, GenericFormatImportUIHandler> { private static final DateFormat DF = new SimpleDateFormat("yyy-MM-dd-hh-mm"); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.css index 21d27ec..4c7b282 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.css @@ -64,7 +64,7 @@ BeanFilterableComboBox { #editProgramButton { actionIcon: edit; text: "tutti.selectCruise.action.editProgram"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.EditProgramAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.EditProgramAction.class}; toolTipText: "tutti.selectCruise.action.editProgram.tip"; _help: {"tutti.selectCruise.action.editProgram.help"}; } @@ -72,7 +72,7 @@ BeanFilterableComboBox { #exportProgramButton { actionIcon: export; text: "tutti.selectCruise.action.exportProgram"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportGenericFormatProgramCruisesAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.ExportGenericFormatProgramCruisesAction.class}; toolTipText: "tutti.selectCruise.action.exportProgram.tip"; _help: {"tutti.selectCruise.action.exportProgram.help"}; } @@ -80,7 +80,7 @@ BeanFilterableComboBox { #importProgramButton { actionIcon: import; text: "tutti.selectCruise.action.importProgram"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.OpenGenericFormatImportScreen.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.OpenGenericFormatImportScreen.class}; toolTipText: "tutti.selectCruise.action.importProgram.tip"; _help: {"tutti.selectCruise.action.importProgram.help"}; } @@ -88,7 +88,7 @@ BeanFilterableComboBox { #newProgramButton { actionIcon: add; text: "tutti.selectCruise.action.newProgram"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.NewProgramAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.NewProgramAction.class}; toolTipText: "tutti.selectCruise.action.newProgram.tip"; _help: {"tutti.selectCruise.action.newProgram.help"}; } @@ -118,7 +118,7 @@ BeanFilterableComboBox { #editCruiseButton { actionIcon: edit; text: "tutti.selectCruise.action.editCruise"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.EditCruiseAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.EditCruiseAction.class}; toolTipText: "tutti.selectCruise.action.editCruise.tip"; _help: {"tutti.selectCruise.action.editCruise.help"}; } @@ -126,7 +126,7 @@ BeanFilterableComboBox { #exportCruiseButton { actionIcon: export; text: "tutti.selectCruise.action.exportCruise"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportGenericFormatCruiseAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.ExportGenericFormatCruiseAction.class}; toolTipText: "tutti.selectCruise.action.exportCruise.tip"; _help: {"tutti.selectCruise.action.exportCruise.help"}; } @@ -135,7 +135,7 @@ BeanFilterableComboBox { actionIcon: email; text: "tutti.selectCruise.action.sendCruiseReport"; toolTipText: "tutti.selectCruise.action.sendCruiseReport.tip"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SendCruiseReportAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.SendCruiseReportAction.class}; _help: {"tutti.selectCruise.action.sendCruiseReport.help"}; } @@ -143,7 +143,7 @@ BeanFilterableComboBox { actionIcon: export; text: "tutti.selectCruise.action.exportCruiseForSumatra"; toolTipText: "tutti.selectCruise.action.exportCruiseForSumatra.tip"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportCruiseForSumatraAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.ExportCruiseForSumatraAction.class}; _help: {"tutti.selectCruise.action.exportCruiseForSumatra.help"}; } @@ -151,7 +151,7 @@ BeanFilterableComboBox { actionIcon: report; text: "tutti.selectCruise.action.speciesToConfirmReportForCruise"; toolTipText: "tutti.selectCruise.action.speciesToConfirmReportForCruise.tip"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SpeciesToConfirmReportForCruiseAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.SpeciesToConfirmReportForCruiseAction.class}; _help: {"tutti.selectCruise.action.speciesToConfirmReportForCruise.help"}; } @@ -159,7 +159,7 @@ BeanFilterableComboBox { actionIcon: add; text: "tutti.selectCruise.action.newCruise"; enabled: {model.isProgramFound()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.NewCruiseAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.NewCruiseAction.class}; toolTipText: "tutti.selectCruise.action.newCruise.tip"; _help: {"tutti.selectCruise.action.newCruise.help"}; } @@ -194,7 +194,7 @@ BeanFilterableComboBox { #newProtocolButton { actionIcon: add; text: "tutti.selectCruise.action.newProtocol"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.NewProtocolAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.NewProtocolAction.class}; toolTipText: "tutti.selectCruise.action.newProtocol.tip"; _help: {"tutti.selectCruise.action.newProtocol.help"}; } @@ -202,7 +202,7 @@ BeanFilterableComboBox { #importProtocolButton { actionIcon: import; text: "tutti.selectCruise.action.importProtocol"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportProtocolAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.ImportProtocolAction.class}; toolTipText: "tutti.selectCruise.action.importProtocol.tip"; _help: {"tutti.selectCruise.action.importProtocol.help"}; } @@ -210,7 +210,7 @@ BeanFilterableComboBox { #editProtocolButton { actionIcon: edit; text: "tutti.selectCruise.action.editProtocol"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.EditProtocolAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.EditProtocolAction.class}; toolTipText: "tutti.selectCruise.action.editProtocol.tip"; _help: {"tutti.selectCruise.action.editProtocol.help"}; } @@ -218,7 +218,7 @@ BeanFilterableComboBox { #cloneProtocolButton { actionIcon: copy; text: "tutti.selectCruise.action.cloneProtocol"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.CloneProtocolAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.CloneProtocolAction.class}; toolTipText: "tutti.selectCruise.action.cloneProtocol.tip"; _help: {"tutti.selectCruise.action.cloneProtocol.help"}; } @@ -226,7 +226,7 @@ BeanFilterableComboBox { #exportProtocolButton { actionIcon: export; text: "tutti.selectCruise.action.exportProtocol"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportProtocolAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.ExportProtocolAction.class}; toolTipText: "tutti.selectCruise.action.exportProtocol.tip"; _help: {"tutti.selectCruise.action.exportProtocol.help"}; } @@ -234,7 +234,7 @@ BeanFilterableComboBox { #deleteProtocolButton { actionIcon: delete; text: "tutti.selectCruise.action.deleteProtocol"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.DeleteProtocolAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.DeleteProtocolAction.class}; toolTipText: "tutti.selectCruise.action.deleteProtocol.tip"; _help: {"tutti.selectCruise.action.deleteProtocol.help"}; } @@ -243,7 +243,7 @@ BeanFilterableComboBox { actionIcon: edit; text: "tutti.selectCruise.action.editCatches"; i18nMnemonic: "tutti.selectCruise.action.editCatches.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.EditCatchesAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.EditCatchesAction.class}; enabled: {model.isValid() && model.isCruiseFound()}; toolTipText: "tutti.selectCruise.action.editCatches.tip"; _help: {"tutti.selectCruise.action.editCatches.help"}; @@ -254,7 +254,7 @@ BeanFilterableComboBox { text: "tutti.selectCruise.action.validateCatches"; toolTipText: "tutti.selectCruise.action.validateCatches.tip"; i18nMnemonic: "tutti.selectCruise.action.validateCatches.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ValidateCatchesAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.home.actions.ValidateCatchesAction.class}; enabled: {model.isValid() && model.isCruiseFound()}; _help: {"tutti.selectCruise.action.validateCatches.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CloneProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/CloneProtocolAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CloneProtocolAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/CloneProtocolAction.java index 235aca8..353015c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CloneProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/CloneProtocolAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -29,6 +29,7 @@ import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocols; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.ui.swing.TuttiScreen; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; import jaxx.runtime.context.JAXXContextEntryDef; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/DeleteProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/DeleteProtocolAction.java similarity index 92% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/DeleteProtocolAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/DeleteProtocolAction.java index ff6016d..c6d1ed9 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/DeleteProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/DeleteProtocolAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.service.PersistenceService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.home.SelectCruiseUI; import fr.ifremer.tutti.ui.swing.content.home.SelectCruiseUIHandler; import fr.ifremer.tutti.ui.swing.content.home.SelectCruiseUIModel; @@ -41,7 +42,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class DeleteProtocolAction extends AbstractTuttiAction<SelectCruiseUIModel, SelectCruiseUI, SelectCruiseUIHandler> { +public class DeleteProtocolAction extends LongActionSupport<SelectCruiseUIModel, SelectCruiseUI, SelectCruiseUIHandler> { /** Logger. */ private static final Log log = LogFactory.getLog(EditProtocolAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditCatchesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/EditCatchesAction.java similarity index 95% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditCatchesAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/EditCatchesAction.java index 631df99..1487652 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditCatchesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/EditCatchesAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.service.ValidationService; import fr.ifremer.tutti.ui.swing.TuttiScreen; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUI; import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditCruiseAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/EditCruiseAction.java similarity index 92% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditCruiseAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/EditCruiseAction.java index be5ca98..0fe17da 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditCruiseAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/EditCruiseAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.service.ValidationService; import fr.ifremer.tutti.ui.swing.TuttiScreen; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; /** diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditProgramAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/EditProgramAction.java similarity index 92% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditProgramAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/EditProgramAction.java index ed84e72..01a852c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditProgramAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/EditProgramAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.ui.swing.TuttiScreen; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/EditProtocolAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditProtocolAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/EditProtocolAction.java index 4791ef4..d99ddf1 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/EditProtocolAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -29,6 +29,7 @@ import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocols; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.ui.swing.TuttiScreen; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; import jaxx.runtime.context.JAXXContextEntryDef; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportCruiseForSumatraAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ExportCruiseForSumatraAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportCruiseForSumatraAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ExportCruiseForSumatraAction.java index 2b2d7d0..7ca41a4 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportCruiseForSumatraAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ExportCruiseForSumatraAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -27,6 +27,7 @@ import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.persistence.entities.data.Cruise; import fr.ifremer.tutti.service.export.sumatra.CatchesSumatraExportService; import fr.ifremer.tutti.service.export.sumatra.SumatraExportResult; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportGenericFormatCruiseAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ExportGenericFormatCruiseAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportGenericFormatCruiseAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ExportGenericFormatCruiseAction.java index 87d291b..6936da3 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportGenericFormatCruiseAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ExportGenericFormatCruiseAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.persistence.entities.data.Cruise; import fr.ifremer.tutti.service.genericformat.GenericFormatExportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.home.SelectCruiseUI; import fr.ifremer.tutti.ui.swing.content.home.SelectCruiseUIHandler; import fr.ifremer.tutti.ui.swing.content.home.SelectCruiseUIModel; @@ -43,7 +44,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 2.0 */ -public class ExportGenericFormatCruiseAction extends AbstractTuttiAction<SelectCruiseUIModel, SelectCruiseUI, SelectCruiseUIHandler> { +public class ExportGenericFormatCruiseAction extends LongActionSupport<SelectCruiseUIModel, SelectCruiseUI, SelectCruiseUIHandler> { /** Logger. */ private static final Log log = LogFactory.getLog(ExportGenericFormatCruiseAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportGenericFormatProgramCruisesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ExportGenericFormatProgramCruisesAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportGenericFormatProgramCruisesAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ExportGenericFormatProgramCruisesAction.java index a8a44c8..238dfe4 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportGenericFormatProgramCruisesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ExportGenericFormatProgramCruisesAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.persistence.entities.data.Program; import fr.ifremer.tutti.service.genericformat.GenericFormatExportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.home.SelectCruiseUI; import fr.ifremer.tutti.ui.swing.content.home.SelectCruiseUIHandler; import fr.ifremer.tutti.ui.swing.content.home.SelectCruiseUIModel; @@ -43,7 +44,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 2.0 */ -public class ExportGenericFormatProgramCruisesAction extends AbstractTuttiAction<SelectCruiseUIModel, SelectCruiseUI, SelectCruiseUIHandler> { +public class ExportGenericFormatProgramCruisesAction extends LongActionSupport<SelectCruiseUIModel, SelectCruiseUI, SelectCruiseUIHandler> { /** Logger. */ private static final Log log = LogFactory.getLog(ExportGenericFormatProgramCruisesAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ExportProtocolAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportProtocolAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ExportProtocolAction.java index 0b70ce5..0ee390e 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ExportProtocolAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.service.protocol.ProtocolImportExportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.home.SelectCruiseUI; import fr.ifremer.tutti.ui.swing.content.home.SelectCruiseUIHandler; import fr.ifremer.tutti.ui.swing.content.home.SelectCruiseUIModel; @@ -41,7 +42,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ExportProtocolAction extends AbstractTuttiAction<SelectCruiseUIModel, SelectCruiseUI, SelectCruiseUIHandler> { +public class ExportProtocolAction extends LongActionSupport<SelectCruiseUIModel, SelectCruiseUI, SelectCruiseUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportGenericFormatProgramCruisesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ImportGenericFormatProgramCruisesAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportGenericFormatProgramCruisesAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ImportGenericFormatProgramCruisesAction.java index 137e7b3..b1bce89 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportGenericFormatProgramCruisesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ImportGenericFormatProgramCruisesAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -28,6 +28,7 @@ import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.data.Program; import fr.ifremer.tutti.service.genericformat.GenericFormatImportConfiguration; import fr.ifremer.tutti.service.genericformat.GenericFormatImportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.home.SelectCruiseUI; import fr.ifremer.tutti.ui.swing.content.home.SelectCruiseUIHandler; import fr.ifremer.tutti.ui.swing.content.home.SelectCruiseUIModel; @@ -45,7 +46,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit - chemit@codelutin.com * @since 3.14 */ -public class ImportGenericFormatProgramCruisesAction extends AbstractTuttiAction<SelectCruiseUIModel, SelectCruiseUI, SelectCruiseUIHandler> { +public class ImportGenericFormatProgramCruisesAction extends LongActionSupport<SelectCruiseUIModel, SelectCruiseUI, SelectCruiseUIHandler> { /** Logger. */ private static final Log log = LogFactory.getLog(ImportGenericFormatProgramCruisesAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ImportProtocolAction.java similarity index 98% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportProtocolAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ImportProtocolAction.java index 7d30df3..3a165a5 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ImportProtocolAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -31,6 +31,7 @@ import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.service.protocol.ProtocolImportExportService; import fr.ifremer.tutti.ui.swing.TuttiScreen; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; import jaxx.runtime.JAXXUtil; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/NewCruiseAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/NewCruiseAction.java similarity index 91% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/NewCruiseAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/NewCruiseAction.java index 8b8dd3b..964666f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/NewCruiseAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/NewCruiseAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import fr.ifremer.tutti.service.ValidationService; import fr.ifremer.tutti.ui.swing.TuttiScreen; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; /** diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/NewProgramAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/NewProgramAction.java similarity index 91% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/NewProgramAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/NewProgramAction.java index ae3512b..c49f2c8 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/NewProgramAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/NewProgramAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import fr.ifremer.tutti.service.ValidationService; import fr.ifremer.tutti.ui.swing.TuttiScreen; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; /** diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/NewProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/NewProtocolAction.java similarity index 90% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/NewProtocolAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/NewProtocolAction.java index 8c63361..9bb4c7f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/NewProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/NewProtocolAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -23,6 +23,7 @@ package fr.ifremer.tutti.ui.swing.action; */ import fr.ifremer.tutti.ui.swing.TuttiScreen; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; /** diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenGenericFormatImportScreen.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/OpenGenericFormatImportScreen.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenGenericFormatImportScreen.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/OpenGenericFormatImportScreen.java index 37213df..a540de5 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenGenericFormatImportScreen.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/OpenGenericFormatImportScreen.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; */ import fr.ifremer.tutti.ui.swing.TuttiScreen; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import static org.nuiton.i18n.I18n.t; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SendCruiseReportAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/SendCruiseReportAction.java similarity index 96% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SendCruiseReportAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/SendCruiseReportAction.java index ff00f8e..c30b6f6 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SendCruiseReportAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/SendCruiseReportAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.data.Cruise; import fr.ifremer.tutti.service.export.pdf.CatchesPdfExportService; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; import org.apache.commons.logging.Log; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SpeciesToConfirmReportForCruiseAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/SpeciesToConfirmReportForCruiseAction.java similarity index 96% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SpeciesToConfirmReportForCruiseAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/SpeciesToConfirmReportForCruiseAction.java index 57bb7f2..c6604d6 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SpeciesToConfirmReportForCruiseAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/SpeciesToConfirmReportForCruiseAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.persistence.entities.data.Cruise; import fr.ifremer.tutti.service.export.toconfirmreport.ToConfirmReportService; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ValidateCatchesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ValidateCatchesAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ValidateCatchesAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ValidateCatchesAction.java index 2ce3149..6742794 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ValidateCatchesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/ValidateCatchesAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.home.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.service.ValidationService; import fr.ifremer.tutti.ui.swing.TuttiScreen; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractChangeScreenAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import fr.ifremer.tutti.ui.swing.content.validation.ValidateCruiseUI; import fr.ifremer.tutti.ui.swing.content.validation.ValidateCruiseUIModel; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUI.css index ee40fca..8b16992 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUI.css @@ -24,6 +24,10 @@ JToolBar { floatable: false; } +#resetValidStateButton { + _skipAction: true; +} + BeanFilterableComboBox { showReset: true; bean: {model}; @@ -104,7 +108,7 @@ JXDatePicker { text: "tutti.editFishingOperation.action.importFromColumnFile"; toolTipText: "tutti.editFishingOperation.action.importFromColumnFile.tip"; i18nMnemonic: "tutti.editFishingOperation.action.importFromColumnFile.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportFishingOperationCaracteristicsFromColumnFileAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.ImportFishingOperationCaracteristicsFromColumnFileAction.class}; _help: {"tutti.editFishingOperation.action.importFromColumnFile.help"}; enabled: {model.isImportFromColumnFileEnabled()} } @@ -621,7 +625,7 @@ CardLayout2Ext { toolTipText: "tutti.editFishingOperation.action.saveEditFishingOperation.tip"; i18nMnemonic: "tutti.editFishingOperation.action.saveEditFishingOperation.mnemonic"; enabled: {model.isValid() && model.isModify()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SaveFishingOperationAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.SaveFishingOperationAction.class}; _help: {"tutti.editFishingOperation.action.saveEditFishingOperation.help"}; } @@ -630,6 +634,6 @@ CardLayout2Ext { text: "tutti.editFishingOperation.action.cancelEditFishingOperation"; toolTipText: "tutti.editFishingOperation.action.cancelEditFishingOperation.tip"; i18nMnemonic: "tutti.editFishingOperation.action.cancelEditFishingOperation.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.CancelEditFishingOperationAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.CancelEditFishingOperationAction.class}; _help: {"tutti.editFishingOperation.action.cancelEditFishingOperation.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java index 244460b..9960ed2 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java @@ -38,7 +38,7 @@ import fr.ifremer.tutti.service.DecoratorService; import fr.ifremer.tutti.service.PersistenceService; import fr.ifremer.tutti.type.CoordinateEditorType; import fr.ifremer.tutti.ui.swing.TuttiUIContext; -import fr.ifremer.tutti.ui.swing.action.CancelEditFishingOperationAction; +import fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.CancelEditFishingOperationAction; import fr.ifremer.tutti.ui.swing.content.operation.fishing.AbstractCaracteristicTabUIModel; import fr.ifremer.tutti.ui.swing.content.operation.fishing.GearUseFeatureTabUIModel; import fr.ifremer.tutti.ui.swing.content.operation.fishing.VesselUseFeatureTabUIModel; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUI.css index f41d0a4..efce18a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUI.css @@ -34,7 +34,7 @@ BeanFilterableComboBox { toolTipText: "tutti.fishingOperations.action.newFishingOperation.tip"; i18nMnemonic: "tutti.fishingOperations.action.newFishingOperation.mnemonic"; preferredSize: {new Dimension(75,12)}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.NewFishingOperationAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.NewFishingOperationAction.class}; _help: {"tutti.fishingOperations.action.newFishingOperation.help"}; } @@ -44,7 +44,7 @@ BeanFilterableComboBox { toolTipText: "tutti.fishingOperations.action.deleteFishingOperation.tip"; i18nMnemonic: "tutti.fishingOperations.action.deleteFishingOperation.mnemonic"; preferredSize: {new Dimension(75,12)}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.DeleteFishingOperationAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.DeleteFishingOperationAction.class}; _help: {"tutti.fishingOperations.action.deleteFishingOperation.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUIHandler.java index e11bf60..eee3ec6 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUIHandler.java @@ -29,7 +29,7 @@ import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.service.PersistenceService; import fr.ifremer.tutti.ui.swing.TuttiUIContext; -import fr.ifremer.tutti.ui.swing.action.EditFishingOperationAction; +import fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.EditFishingOperationAction; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiTabContainerUIHandler; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUI.css index dce7a59..524d58c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUI.css @@ -121,7 +121,7 @@ ComputableDataEditor { text: "tutti.editCatchBatch.action.exportFishingOperationReport"; toolTipText: "tutti.editCatchBatch.action.exportFishingOperationReport.tip"; i18nMnemonic: "tutti.editCatchBatch.action.exportFishingOperationReport.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportFishingOperationReportAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.actions.ExportFishingOperationReportAction.class}; _help: {"tutti.editCatchBatch.action.exportFishingOperationReport.help"}; } @@ -130,7 +130,7 @@ ComputableDataEditor { text: "tutti.editCatchBatch.action.exportFishingOperationReportForSumatra"; toolTipText: "tutti.editCatchBatch.action.exportFishingOperationReportForSumatra.tip"; i18nMnemonic: "tutti.editCatchBatch.action.exportFishingOperationReportForSumatra.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportFishingOperationForSumatraAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.actions.ExportFishingOperationForSumatraAction.class}; _help: {"tutti.editCatchBatch.action.exportFishingOperationReportForSumatra.help"}; } @@ -139,7 +139,7 @@ ComputableDataEditor { text: "tutti.editCatchBatch.action.importMultiPost"; toolTipText: "tutti.editCatchBatch.action.importMultiPost.tip"; i18nMnemonic: "tutti.editCatchBatch.action.importMultiPost.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportMultiPostCatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.actions.ImportMultiPostCatchAction.class}; _help: {"tutti.editCatchBatch.action.importMultiPost.help"}; } @@ -148,7 +148,7 @@ ComputableDataEditor { text: "tutti.editCatchBatch.action.exportMultiPost"; toolTipText: "tutti.editCatchBatch.action.exportMultiPost.tip"; i18nMnemonic: "tutti.editCatchBatch.action.exportMultiPost.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportMultiPostCatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.actions.ExportMultiPostCatchAction.class}; _help: {"tutti.editCatchBatch.action.exportMultiPost.help"}; } @@ -158,7 +158,7 @@ ComputableDataEditor { toolTipText: "tutti.editCatchBatch.action.saveCatchBatch.tip"; i18nMnemonic: "tutti.editCatchBatch.action.saveCatchBatch.mnemonic"; enabled: {model.isModify()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SaveCatchBatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.actions.SaveCatchBatchAction.class}; _help: {"tutti.editCatchBatch.action.saveCatchBatch.help"}; } @@ -167,7 +167,7 @@ ComputableDataEditor { text: "tutti.editCatchBatch.action.cancelEditCatchBatch"; toolTipText: "tutti.editCatchBatch.action.cancelEditCatchBatch.tip"; i18nMnemonic: "tutti.editCatchBatch.action.cancelEditCatchBatch.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.CancelEditCatchBatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.actions.CancelEditCatchBatchAction.class}; _help: {"tutti.editCatchBatch.action.cancelEditCatchBatch.help"}; } @@ -176,7 +176,7 @@ ComputableDataEditor { text: "tutti.editCatchBatch.action.cleanWeights"; toolTipText: "tutti.editCatchBatch.action.cleanWeights.tip"; i18nMnemonic: "tutti.editCatchBatch.action.cleanWeights.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.CleanBatchWeightsAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.actions.CleanBatchWeightsAction.class}; _help: {"tutti.editCatchBatch.action.cleanWeights.help"}; } @@ -185,6 +185,6 @@ ComputableDataEditor { text: "tutti.editCatchBatch.action.computeWeights"; toolTipText: "tutti.editCatchBatch.action.computeWeights.tip"; i18nMnemonic: "tutti.editCatchBatch.action.computeWeights.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ComputeBatchWeightsAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.actions.ComputeBatchWeightsAction.class}; _help: {"tutti.editCatchBatch.action.computeWeights.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java index 145e5d5..022acc4 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java @@ -27,11 +27,9 @@ import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchRowModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.frequency.BenthosFrequencyCellComponent; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.frequency.BenthosFrequencyUI; -import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.split.SplitBenthosBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchRowModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.frequency.SpeciesFrequencyCellComponent; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.frequency.SpeciesFrequencyUI; -import fr.ifremer.tutti.ui.swing.content.operation.catches.species.split.SplitSpeciesBatchUI; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiTabContainerUIHandler; import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor; import fr.ifremer.tutti.ui.swing.util.TuttiUI; @@ -406,38 +404,38 @@ public class EditCatchesUIHandler extends AbstractTuttiTabContainerUIHandler<Edi ui.getSpeciesTabFrequencyEditorReminderLabel().setTitle(title); } - public void splitSpeciesBatch(SpeciesBatchRowModel editRow, - SplitSpeciesBatchUI splitBatchEditor) { - - splitBatchEditor.getHandler().editBatch(editRow); - - // open split editor - setSpeciesSelectedCard(EditCatchesUIHandler.SPLIT_BATCH_CARD); - - // update title - String title = buildReminderLabelTitle(editRow.getSpecies(), - editRow, - ui.getSpeciesTabFishingOperationReminderLabel().getTitle(), - t("tutti.splitSpeciesBatch.title")); - ui.getSpeciesTabSplitBatchReminderLabel().setTitle(title); - } - - public void addSampleCategorySpeciesBatch(SpeciesBatchRowModel editRow, - SplitSpeciesBatchUI splitBatchEditor, - int sampleCategoryId) { - - splitBatchEditor.getHandler().editBatch(editRow, sampleCategoryId); - - // open split editor - setSpeciesSelectedCard(EditCatchesUIHandler.ADD_SAMPLE_CATEGORY_BATCH_CARD); - - // update title - String title = buildReminderLabelTitle(editRow.getSpecies(), - editRow, - ui.getSpeciesTabFishingOperationReminderLabel().getTitle(), - t("tutti.addSampleCategorySpeciesBatch.title")); - ui.getSpeciesTabAddSampleCategoryBatchReminderLabel().setTitle(title); - } +// public void splitSpeciesBatch(SpeciesBatchRowModel editRow, +// SplitSpeciesBatchUI splitBatchEditor) { +// +// splitBatchEditor.getHandler().editBatch(editRow); +// +// // open split editor +// setSpeciesSelectedCard(EditCatchesUIHandler.SPLIT_BATCH_CARD); +// +// // update title +// String title = buildReminderLabelTitle(editRow.getSpecies(), +// editRow, +// ui.getSpeciesTabFishingOperationReminderLabel().getTitle(), +// t("tutti.splitSpeciesBatch.title")); +// ui.getSpeciesTabSplitBatchReminderLabel().setTitle(title); +// } + +// public void addSampleCategorySpeciesBatch(SpeciesBatchRowModel editRow, +// SplitSpeciesBatchUI splitBatchEditor, +// int sampleCategoryId) { +// +// splitBatchEditor.getHandler().editBatch(editRow, sampleCategoryId); +// +// // open split editor +// setSpeciesSelectedCard(EditCatchesUIHandler.ADD_SAMPLE_CATEGORY_BATCH_CARD); +// +// // update title +// String title = buildReminderLabelTitle(editRow.getSpecies(), +// editRow, +// ui.getSpeciesTabFishingOperationReminderLabel().getTitle(), +// t("tutti.addSampleCategorySpeciesBatch.title")); +// ui.getSpeciesTabAddSampleCategoryBatchReminderLabel().setTitle(title); +// } public void setSpeciesSelectedCard(String card) { JPanel panel = ui.getSpeciesTabPanel(); @@ -499,39 +497,39 @@ public class EditCatchesUIHandler extends AbstractTuttiTabContainerUIHandler<Edi ui.getBenthosTabFrequencyEditorReminderLabel().setTitle(title); } - public void splitBenthosBatch(BenthosBatchRowModel editRow, - SplitBenthosBatchUI splitBatchEditor) { - - - splitBatchEditor.getHandler().editBatch(editRow); - - // open split editor - setBenthosSelectedCard(EditCatchesUIHandler.SPLIT_BATCH_CARD); - - // update title - String title = buildReminderLabelTitle(editRow.getSpecies(), - editRow, - ui.getBenthosTabFishingOperationReminderLabel().getTitle(), - t("tutti.splitBenthosBatch.title")); - ui.getBenthosTabSplitBatchReminderLabel().setTitle(title); - } - - public void addSampleCategoryBenthosBatch(BenthosBatchRowModel editRow, - SplitBenthosBatchUI splitBatchEditor, - int sampleCategoryId) { - - splitBatchEditor.getHandler().editBatch(editRow, sampleCategoryId); - - // open split editor - setBenthosSelectedCard(EditCatchesUIHandler.ADD_SAMPLE_CATEGORY_BATCH_CARD); - - // update title - String title = buildReminderLabelTitle(editRow.getSpecies(), - editRow, - ui.getBenthosTabFishingOperationReminderLabel().getTitle(), - t("tutti.addSampleCategoryBenthosBatch.title")); - ui.getBenthosTabAddSampleCategoryBatchReminderLabel().setTitle(title); - } +// public void splitBenthosBatch(BenthosBatchRowModel editRow, +// SplitBenthosBatchUI splitBatchEditor) { +// +// +// splitBatchEditor.getHandler().editBatch(editRow); +// +// // open split editor +// setBenthosSelectedCard(EditCatchesUIHandler.SPLIT_BATCH_CARD); +// +// // update title +// String title = buildReminderLabelTitle(editRow.getSpecies(), +// editRow, +// ui.getBenthosTabFishingOperationReminderLabel().getTitle(), +// t("tutti.splitBenthosBatch.title")); +// ui.getBenthosTabSplitBatchReminderLabel().setTitle(title); +// } + +// public void addSampleCategoryBenthosBatch(BenthosBatchRowModel editRow, +// SplitBenthosBatchUI splitBatchEditor, +// int sampleCategoryId) { +// +// splitBatchEditor.getHandler().editBatch(editRow, sampleCategoryId); +// +// // open split editor +// setBenthosSelectedCard(EditCatchesUIHandler.ADD_SAMPLE_CATEGORY_BATCH_CARD); +// +// // update title +// String title = buildReminderLabelTitle(editRow.getSpecies(), +// editRow, +// ui.getBenthosTabFishingOperationReminderLabel().getTitle(), +// t("tutti.addSampleCategoryBenthosBatch.title")); +// ui.getBenthosTabAddSampleCategoryBatchReminderLabel().setTitle(title); +// } public void setBenthosSelectedCard(String card) { JPanel panel = ui.getBenthosTabPanel(); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/MultiPostImportLogDialog.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/MultiPostImportLogDialog.css index c46f78e..ed02da0 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/MultiPostImportLogDialog.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/MultiPostImportLogDialog.css @@ -45,4 +45,5 @@ text: "tutti.multiPostImportLog.close"; toolTipText: "tutti.multiPostImportLog.close.tip"; i18nMnemonic: "tutti.multiPostImportLog.close.mnemonic"; + _skipAction: true; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.css index 592c68d..005eaf7 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.css @@ -69,7 +69,7 @@ NumberEditor { text: "tutti.editAccidentalBatch.action.importMultiPost"; toolTipText: "tutti.editAccidentalBatch.action.importMultiPost.tip"; i18nMnemonic: "tutti.editAccidentalBatch.action.importMultiPost.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportMultiPostAccidentalAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.actions.ImportMultiPostAccidentalAction.class}; _help: {"tutti.editAccidentalBatch.action.importMultiPost.help"}; } @@ -78,7 +78,7 @@ NumberEditor { text: "tutti.editAccidentalBatch.action.exportMultiPost"; toolTipText: "tutti.editAccidentalBatch.action.exportMultiPost.tip"; i18nMnemonic: "tutti.editAccidentalBatch.action.exportMultiPost.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportMultiPostAccidentalAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.actions.ExportMultiPostAccidentalAction.class}; _help: {"tutti.editAccidentalBatch.action.exportMultiPost.help"}; } @@ -87,6 +87,7 @@ NumberEditor { text: "tutti.editAccidentalBatch.action.createBatch"; toolTipText: "tutti.editAccidentalBatch.action.createBatch.tip"; i18nMnemonic: "tutti.editAccidentalBatch.action.createBatch.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.actions.OpenCreateAccidentalBatchUIAction.class}; _help: {"tutti.editAccidentalBatch.action.createBatch.help"}; } @@ -95,7 +96,7 @@ NumberEditor { text: "tutti.editAccidentalBatch.action.removeBatch"; toolTipText: "tutti.editAccidentalBatch.action.removeBatch.tip"; i18nMnemonic: "tutti.editAccidentalBatch.action.removeBatch.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.RemoveAccidentalBatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.actions.RemoveAccidentalBatchAction.class}; enabled: {model.isRemoveBatchEnabled()}; _help: {"tutti.editAccidentalBatch.action.removeBatch.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.jaxx index 035f25e..3c0df43 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.jaxx @@ -76,8 +76,7 @@ public AccidentalBatchUI(TuttiUI<?,?> parentUI) { layout='{new BorderLayout()}'> <JPanel layout='{new GridLayout(1,0)}' constraints='BorderLayout.WEST'> - <JButton id='createAccidentalBatchButton' - onActionPerformed='handler.createBatch()'/> + <JButton id='createAccidentalBatchButton'/> </JPanel> </JPanel> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUIHandler.java index e1a751c..016ce07 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUIHandler.java @@ -37,7 +37,6 @@ import fr.ifremer.tutti.ui.swing.content.operation.catches.AbstractTuttiBatchTab import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; -import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.create.CreateAccidentalBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.create.CreateAccidentalBatchUIModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchTableModel; import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor; @@ -385,15 +384,6 @@ public class AccidentalBatchUIHandler //-- Public methods --// //------------------------------------------------------------------------// - public void createBatch() { - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - CreateAccidentalBatchUI createBatchEditor = parent.getAccidentalTabCreateBatch(); - - createBatchEditor.getHandler().openUI(); - parent.getHandler().setAccidentalSelectedCard(EditCatchesUIHandler.CREATE_BATCH_CARD); - } - public void addBatch(CreateAccidentalBatchUIModel model) { if (model.isValid()) { diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostAccidentalAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/actions/ExportMultiPostAccidentalAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostAccidentalAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/actions/ExportMultiPostAccidentalAction.java index bb81a9a..db18f8b 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostAccidentalAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/actions/ExportMultiPostAccidentalAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.catches.multipost.MultiPostExportService; +import fr.ifremer.tutti.ui.swing.content.operation.catches.actions.ExportMultiPostActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.AccidentalBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.AccidentalBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.AccidentalBatchUIModel; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostAccidentalAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/actions/ImportMultiPostAccidentalAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostAccidentalAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/actions/ImportMultiPostAccidentalAction.java index f54af7f..d70b87a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostAccidentalAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/actions/ImportMultiPostAccidentalAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.catches.multipost.MultiPostImportService; +import fr.ifremer.tutti.ui.swing.content.operation.catches.actions.ImportMultiPostActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.AccidentalBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.AccidentalBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.AccidentalBatchUIModel; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/actions/OpenCreateAccidentalBatchUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/actions/OpenCreateAccidentalBatchUIAction.java new file mode 100644 index 0000000..a06c2d1 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/actions/OpenCreateAccidentalBatchUIAction.java @@ -0,0 +1,33 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; +import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.AccidentalBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.create.CreateAccidentalBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class OpenCreateAccidentalBatchUIAction extends SimpleActionSupport<AccidentalBatchUI>{ + + private static final long serialVersionUID = -6540241422935319461L; + + public OpenCreateAccidentalBatchUIAction(AccidentalBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(AccidentalBatchUI ui) { + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + CreateAccidentalBatchUI createBatchEditor = parent.getAccidentalTabCreateBatch(); + + createBatchEditor.getHandler().openUI(); + parent.getHandler().setAccidentalSelectedCard(EditCatchesUIHandler.CREATE_BATCH_CARD); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveAccidentalBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/actions/RemoveAccidentalBatchAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveAccidentalBatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/actions/RemoveAccidentalBatchAction.java index ebb86bd..3785fc6 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveAccidentalBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/actions/RemoveAccidentalBatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.TuttiPersistence; import fr.ifremer.tutti.persistence.entities.TuttiEntities; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.AccidentalBatchRowModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.AccidentalBatchTableModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.AccidentalBatchUI; @@ -43,7 +44,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <kmorin@codelutin.com> * @since 1.4 */ -public class RemoveAccidentalBatchAction extends AbstractTuttiAction<AccidentalBatchUIModel, AccidentalBatchUI, AccidentalBatchUIHandler> { +public class RemoveAccidentalBatchAction extends LongActionSupport<AccidentalBatchUIModel, AccidentalBatchUI, AccidentalBatchUIHandler> { private static final Log log = LogFactory.getLog(RemoveAccidentalBatchAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUI.css index 2b382ac..76f0fdd 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUI.css @@ -123,6 +123,7 @@ NumberEditor { toolTipText: "tutti.createAccidentalBatch.action.saveAndContinue.tip"; i18nMnemonic: "tutti.createAccidentalBatch.action.saveAndContinue.mnemonic"; enabled: {model.isValid()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.create.actions.CreateAccidentalBatchAndContinueAction.class}; _help: {"tutti.createAccidentalBatch.action.saveAndContinue.help"}; } @@ -132,6 +133,7 @@ NumberEditor { toolTipText: "tutti.createAccidentalBatch.action.saveAndClose.tip"; i18nMnemonic: "tutti.createAccidentalBatch.action.saveAndClose.mnemonic"; enabled: {model.isValid()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.create.actions.CreateAccidentalBatchAndCloseAction.class}; _help: {"tutti.createAccidentalBatch.action.saveAndClose.help"}; } @@ -140,5 +142,6 @@ NumberEditor { text: "tutti.createAccidentalBatch.action.cancel"; toolTipText: "tutti.createAccidentalBatch.action.cancel.tip"; i18nMnemonic: "tutti.createAccidentalBatch.action.cancel.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.create.actions.CreateAccidentalBatchCancelAction.class}; _help: {"tutti.createAccidentalBatch.action.cancel.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUI.jaxx index 0c70d9f..ba3f0a0 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUI.jaxx @@ -142,8 +142,8 @@ public CreateAccidentalBatchUI(EditCatchesUI parentUI) { <!-- Form Actions --> <JPanel layout='{new GridLayout(1, 0)}' constraints='BorderLayout.SOUTH'> - <JButton id='cancelButton' onActionPerformed='handler.cancel()'/> - <JButton id='saveAndContinueButton' onActionPerformed='handler.saveAndContinue()'/> - <JButton id='saveAndCloseButton' onActionPerformed='handler.saveAndClose()'/> + <JButton id='cancelButton'/> + <JButton id='saveAndContinueButton'/> + <JButton id='saveAndCloseButton'/> </JPanel> </JPanel> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUIHandler.java index 9cbe3bc..09b1360 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUIHandler.java @@ -25,12 +25,10 @@ package fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.create; import com.google.common.collect.Lists; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; -import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.AccidentalBatchUI; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; import jaxx.runtime.validator.swing.SwingValidator; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.jaxx.application.swing.util.Cancelable; import javax.swing.JComponent; @@ -38,8 +36,7 @@ import javax.swing.JComponent; * @author kmorin <kmorin@codelutin.com> * @since 1.4 */ -public class CreateAccidentalBatchUIHandler extends AbstractTuttiUIHandler<CreateAccidentalBatchUIModel, CreateAccidentalBatchUI> - implements Cancelable { +public class CreateAccidentalBatchUIHandler extends AbstractTuttiUIHandler<CreateAccidentalBatchUIModel, CreateAccidentalBatchUI> { private static final Log log = LogFactory.getLog(CreateAccidentalBatchUIHandler.class); @@ -108,18 +105,6 @@ public class CreateAccidentalBatchUIHandler extends AbstractTuttiUIHandler<Creat } //------------------------------------------------------------------------// - //-- Cancelable methods --// - //------------------------------------------------------------------------// - - @Override - public void cancel() { - if (log.isDebugEnabled()) { - log.debug("Cancel UI " + ui); - } - closeUI(ui); - } - - //------------------------------------------------------------------------// //-- Public methods --// //------------------------------------------------------------------------// @@ -134,31 +119,4 @@ public class CreateAccidentalBatchUIHandler extends AbstractTuttiUIHandler<Creat } - public void saveAndContinue() { - - if (log.isDebugEnabled()) { - log.debug("Save And Continue UI " + ui); - } - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - AccidentalBatchUI accidentalTabContent = parent.getAccidentalTabContent(); - accidentalTabContent.getHandler().addBatch(getModel()); - - // reopen ui - openUI(); - } - - public void saveAndClose() { - - if (log.isDebugEnabled()) { - log.debug("Save And Close UI " + ui); - } - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - parent.getAccidentalTabContent().getHandler().addBatch(getModel()); - - // close dialog - closeUI(ui); - } - } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/actions/CreateAccidentalBatchAndCloseAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/actions/CreateAccidentalBatchAndCloseAction.java new file mode 100644 index 0000000..a8e9567 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/actions/CreateAccidentalBatchAndCloseAction.java @@ -0,0 +1,40 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.create.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.create.CreateAccidentalBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CreateAccidentalBatchAndCloseAction extends SimpleActionSupport<CreateAccidentalBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CreateAccidentalBatchAndCloseAction.class); + + private static final long serialVersionUID = 1L; + + public CreateAccidentalBatchAndCloseAction(CreateAccidentalBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CreateAccidentalBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Save And Close UI " + ui); + } + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + parent.getAccidentalTabContent().getHandler().addBatch(ui.getModel()); + + // close dialog + ui.getHandler().onCloseUI(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/actions/CreateAccidentalBatchAndContinueAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/actions/CreateAccidentalBatchAndContinueAction.java new file mode 100644 index 0000000..f9f04dd --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/actions/CreateAccidentalBatchAndContinueAction.java @@ -0,0 +1,42 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.create.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.AccidentalBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.create.CreateAccidentalBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CreateAccidentalBatchAndContinueAction extends SimpleActionSupport<CreateAccidentalBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CreateAccidentalBatchAndContinueAction.class); + + private static final long serialVersionUID = 1L; + + public CreateAccidentalBatchAndContinueAction(CreateAccidentalBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CreateAccidentalBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Save And Continue UI " + ui); + } + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + AccidentalBatchUI accidentalTabContent = parent.getAccidentalTabContent(); + accidentalTabContent.getHandler().addBatch(ui.getModel()); + + // reopen ui + ui.getHandler().openUI(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/actions/CreateAccidentalBatchCancelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/actions/CreateAccidentalBatchCancelAction.java new file mode 100644 index 0000000..22cd8b1 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/actions/CreateAccidentalBatchCancelAction.java @@ -0,0 +1,26 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.create.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.create.CreateAccidentalBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CreateAccidentalBatchCancelAction extends SimpleActionSupport<CreateAccidentalBatchUI> { + + private static final long serialVersionUID = 1L; + + public CreateAccidentalBatchCancelAction(CreateAccidentalBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CreateAccidentalBatchUI ui) { + + ui.getHandler().onCloseUI(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CancelEditCatchBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/CancelEditCatchBatchAction.java similarity index 88% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CancelEditCatchBatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/CancelEditCatchBatchAction.java index dbf07ac..f8f7d4a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CancelEditCatchBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/CancelEditCatchBatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.actions; /* * #%L @@ -25,10 +25,12 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.data.CatchBatch; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; +import fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.EditFishingOperationAction; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -38,7 +40,7 @@ import org.apache.commons.logging.LogFactory; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class CancelEditCatchBatchAction extends AbstractTuttiAction<EditCatchesUIModel, EditCatchesUI, EditCatchesUIHandler> { +public class CancelEditCatchBatchAction extends LongActionSupport<EditCatchesUIModel, EditCatchesUI, EditCatchesUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CleanBatchWeightsAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/CleanBatchWeightsAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CleanBatchWeightsAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/CleanBatchWeightsAction.java index e06cab0..7a03978 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CleanBatchWeightsAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/CleanBatchWeightsAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.collect.Multimap; import fr.ifremer.tutti.persistence.InvalidBatchModelException; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.catches.WeightCleaningService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; @@ -45,7 +46,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit <chemit@codelutin.com> * @since 2.6 */ -public class CleanBatchWeightsAction extends AbstractTuttiAction<EditCatchesUIModel, EditCatchesUI, EditCatchesUIHandler> { +public class CleanBatchWeightsAction extends LongActionSupport<EditCatchesUIModel, EditCatchesUI, EditCatchesUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ComputeBatchWeightsAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ComputeBatchWeightsAction.java similarity index 98% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ComputeBatchWeightsAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ComputeBatchWeightsAction.java index 1d3c7bf..672cf03 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ComputeBatchWeightsAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ComputeBatchWeightsAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.actions; /* * #%L @@ -35,6 +35,7 @@ import fr.ifremer.tutti.service.PersistenceService; import fr.ifremer.tutti.service.catches.TuttiWeightComputingException; import fr.ifremer.tutti.service.catches.WeightCleaningService; import fr.ifremer.tutti.service.catches.WeightComputingService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; @@ -58,7 +59,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <kmorin@codelutin.com> * @since 1.0 */ -public class ComputeBatchWeightsAction extends AbstractTuttiAction<EditCatchesUIModel, EditCatchesUI, EditCatchesUIHandler> { +public class ComputeBatchWeightsAction extends LongActionSupport<EditCatchesUIModel, EditCatchesUI, EditCatchesUIHandler> { protected final WeightCleaningService cleaningService; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportFishingOperationForSumatraAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ExportFishingOperationForSumatraAction.java similarity index 95% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportFishingOperationForSumatraAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ExportFishingOperationForSumatraAction.java index 8732f2f..0e9f971 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportFishingOperationForSumatraAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ExportFishingOperationForSumatraAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.actions; /* * #%L @@ -28,6 +28,7 @@ import fr.ifremer.tutti.persistence.entities.data.Cruise; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.export.sumatra.CatchesSumatraExportService; import fr.ifremer.tutti.service.export.sumatra.SumatraExportResult; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; @@ -45,7 +46,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit <chemit@codelutin.com> * @since 2.7 */ -public class ExportFishingOperationForSumatraAction extends AbstractTuttiAction<EditCatchesUIModel, EditCatchesUI, EditCatchesUIHandler> { +public class ExportFishingOperationForSumatraAction extends LongActionSupport<EditCatchesUIModel, EditCatchesUI, EditCatchesUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportFishingOperationReportAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ExportFishingOperationReportAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportFishingOperationReportAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ExportFishingOperationReportAction.java index ccf9f56..e8d9ec5 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportFishingOperationReportAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ExportFishingOperationReportAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.data.Cruise; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.export.pdf.CatchesPdfExportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; @@ -42,7 +43,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <morin@codelutin.com> * @since 1.0 */ -public class ExportFishingOperationReportAction extends AbstractTuttiAction<EditCatchesUIModel, EditCatchesUI, EditCatchesUIHandler> { +public class ExportFishingOperationReportAction extends LongActionSupport<EditCatchesUIModel, EditCatchesUI, EditCatchesUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostActionSupport.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ExportMultiPostActionSupport.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostActionSupport.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ExportMultiPostActionSupport.java index 576b809..a10413c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostActionSupport.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ExportMultiPostActionSupport.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.actions; /* * #%L @@ -26,6 +26,7 @@ import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.DecoratorService; import fr.ifremer.tutti.service.catches.multipost.MultiPostExportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; @@ -43,7 +44,7 @@ import static org.nuiton.i18n.I18n.t; * @since 2.2 */ public abstract class ExportMultiPostActionSupport<M extends AbstractBean, UI extends TuttiUI<M, ?>, H extends AbstractTuttiUIHandler<M, UI>> - extends AbstractTuttiAction<M, UI, H> { + extends LongActionSupport<M, UI, H> { /** * Do save the catches before export. diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostCatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ExportMultiPostCatchAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostCatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ExportMultiPostCatchAction.java index 9712f94..4466881 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostCatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ExportMultiPostCatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostActionSupport.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ImportMultiPostActionSupport.java similarity index 96% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostActionSupport.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ImportMultiPostActionSupport.java index 47ea4a3..f61d775 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostActionSupport.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ImportMultiPostActionSupport.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.actions; /* * #%L @@ -26,10 +26,12 @@ import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.catches.multipost.MultiPostImportService; import fr.ifremer.tutti.type.WeightUnit; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.MultiPostImportLogDialog; +import fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.EditFishingOperationAction; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; import fr.ifremer.tutti.ui.swing.util.TuttiUI; import org.apache.commons.collections4.MapUtils; @@ -49,7 +51,7 @@ import static org.nuiton.i18n.I18n.t; * @since 2.2 */ public abstract class ImportMultiPostActionSupport<M extends AbstractBean, UI extends TuttiUI<M, ?>, H extends AbstractTuttiUIHandler<M, UI>> - extends AbstractTuttiAction<M, UI, H> { + extends LongActionSupport<M, UI, H> { /** * Save the modified catch before import ? diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostCatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ImportMultiPostCatchAction.java similarity index 98% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostCatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ImportMultiPostCatchAction.java index b5fa97f..a29354e 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostCatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ImportMultiPostCatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveCatchBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/SaveCatchBatchAction.java similarity index 92% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveCatchBatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/SaveCatchBatchAction.java index f51b445..6f9fcd1 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveCatchBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/SaveCatchBatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import fr.ifremer.tutti.persistence.entities.data.CatchBatch; import fr.ifremer.tutti.service.PersistenceService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; @@ -37,7 +38,7 @@ import org.apache.commons.logging.LogFactory; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class SaveCatchBatchAction extends AbstractTuttiAction<EditCatchesUIModel, EditCatchesUI, EditCatchesUIHandler> { +public class SaveCatchBatchAction extends LongActionSupport<EditCatchesUIModel, EditCatchesUI, EditCatchesUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.css index 2ffead7..621acc4 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.css @@ -188,6 +188,7 @@ ComputableDataEditor { toolTipText: "tutti.editBenthosBatch.action.splitBatch.tip"; i18nMnemonic: "tutti.editBenthosBatch.action.splitBatch.mnemonic"; enabled: {model.isTableViewModeAll() && model.isSplitBatchEnabled()}; + _simpleAction:{fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions.OpenSplitBenthosBatchUIAction.class}; _help: {"tutti.editBenthosBatch.action.splitBatch.help"}; } @@ -197,6 +198,7 @@ ComputableDataEditor { toolTipText: "tutti.editBenthosBatch.action.changeSampleCategory.tip"; i18nMnemonic: "tutti.editBenthosBatch.action.changeSampleCategory.mnemonic"; enabled: {model.isTableViewModeAll() && model.isChangeSampleCategoryEnabled()}; + _simpleAction:{fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions.ChangeBenthosBatchSampleCategoryAction.class}; _help: {"tutti.editBenthosBatch.action.changeSampleCategory.help"}; } @@ -206,6 +208,7 @@ ComputableDataEditor { toolTipText: "tutti.editBenthosBatch.action.addSampleCategory.tip"; i18nMnemonic: "tutti.editBenthosBatch.action.addSampleCategory.mnemonic"; enabled: {model.isTableViewModeAll() && model.isAddSampleCategoryEnabled()}; + _simpleAction:{fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions.OpenAddBenthosBatchSampleCategoryUIAction.class}; _help: {"tutti.editBenthosBatch.action.addSampleCategory.help"}; } @@ -214,7 +217,7 @@ ComputableDataEditor { text: "tutti.editBenthosBatch.action.removeBatch"; toolTipText: "tutti.editBenthosBatch.action.removeBatch.tip"; i18nMnemonic: "tutti.editBenthosBatch.action.removeBatch.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.RemoveBenthosBatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions.RemoveBenthosBatchAction.class}; enabled: {model.isTableViewModeAll() && model.isRemoveBatchEnabled()}; _help: {"tutti.editBenthosBatch.action.removeBatch.help"}; } @@ -224,7 +227,7 @@ ComputableDataEditor { text: "tutti.editBenthosBatch.action.removeSubBatch"; toolTipText: "tutti.editBenthosBatch.action.removeSubBatch.tip"; i18nMnemonic: "tutti.editBenthosBatch.action.removeSubBatch.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.RemoveBenthosSubBatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions.RemoveBenthosSubBatchAction.class}; enabled: {model.isTableViewModeAll() && model.isRemoveSubBatchEnabled()}; _help: {"tutti.editBenthosBatch.action.removeSubBatch.help"}; } @@ -234,7 +237,7 @@ ComputableDataEditor { text: "tutti.editBenthosBatch.action.renameBatch"; toolTipText: "tutti.editBenthosBatch.action.renameBatch.tip"; i18nMnemonic: "tutti.editBenthosBatch.action.renameBatch.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.RenameBenthosBatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions.RenameBenthosBatchAction.class}; enabled: {model.isTableViewModeAll() && model.isRenameBatchEnabled()}; _help: {"tutti.editBenthosBatch.action.renameBatch.help"}; } @@ -244,7 +247,7 @@ ComputableDataEditor { text: "tutti.editBenthosBatch.action.createMelag"; toolTipText: "tutti.editBenthosBatch.action.createMelag.tip"; i18nMnemonic: "tutti.editBenthosBatch.action.createMelag.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.CreateBenthosMelagAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions.CreateBenthosMelagAction.class}; enabled: {!model.isTableViewModeLeaf() && model.isCreateMelagEnabled()}; _help: {"tutti.editBenthosBatch.action.createMelag.help"}; } @@ -255,6 +258,7 @@ ComputableDataEditor { toolTipText: "tutti.editBenthosBatch.action.editFrequencies.tip"; i18nMnemonic: "tutti.editBenthosBatch.action.editFrequencies.mnemonic"; enabled: {model.isTableViewModeAll() && model.isEditFrequenciesEnabled()}; + _simpleAction:{fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions.OpenEditBenthosBatchFrequencyUIAction.class}; _help: {"tutti.editBenthosBatch.action.editFrequencies.help"}; } @@ -287,7 +291,7 @@ ComputableDataEditor { text: "tutti.editBenthosBatch.action.importMultiPost"; toolTipText: "tutti.editBenthosBatch.action.importMultiPost.tip"; i18nMnemonic: "tutti.editBenthosBatch.action.importMultiPost.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportMultiPostBenthosAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions.ImportMultiPostBenthosAction.class}; _help: {"tutti.editBenthosBatch.action.importMultiPost.help"}; } @@ -296,7 +300,7 @@ ComputableDataEditor { text: "tutti.editBenthosBatch.action.exportMultiPost"; toolTipText: "tutti.editBenthosBatch.action.exportMultiPost.tip"; i18nMnemonic: "tutti.editBenthosBatch.action.exportMultiPost.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportMultiPostBenthosAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions.ExportMultiPostBenthosAction.class}; _help: {"tutti.editBenthosBatch.action.exportMultiPost.help"}; } @@ -305,6 +309,7 @@ ComputableDataEditor { text: "tutti.editBenthosBatch.action.createBatch"; toolTipText: "tutti.editBenthosBatch.action.createBatch.tip"; i18nMnemonic: "tutti.editBenthosBatch.action.createBatch.mnemonic"; + _simpleAction:{fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions.OpenCreateBenthosBatchUIAction.class}; _help: {"tutti.editBenthosBatch.action.createBatch.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.jaxx index 0df3509..61150fa 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.jaxx @@ -73,18 +73,14 @@ public BenthosBatchUI(TuttiUI<?,?> parentUI) { </JToolBar> <JPopupMenu id='tablePopup'> - <JMenuItem id='splitBenthosBatchMenu' - onActionPerformed='handler.splitBatch()'/> - <JMenuItem id='changeSampleCategoryMenu' - onActionPerformed='handler.changeBatchCategory()'/> - <JMenuItem id='addSampleCategoryMenu' - onActionPerformed='handler.addBatchCategory()'/> + <JMenuItem id='splitBenthosBatchMenu'/> + <JMenuItem id='changeSampleCategoryMenu'/> + <JMenuItem id='addSampleCategoryMenu'/> <JMenuItem id='removeBenthosBatchMenu'/> <JMenuItem id='removeBenthosSubBatchMenu'/> <JMenuItem id='renameBenthosBatchMenu'/> <JMenuItem id='createBenthosMelagMenu'/> - <JMenuItem id='editFrequenciesMenu' - onActionPerformed='handler.editFrequencies()'/> + <JMenuItem id='editFrequenciesMenu'/> </JPopupMenu> <Table id='form' fill='both' constraints='BorderLayout.NORTH'> @@ -145,8 +141,7 @@ public BenthosBatchUI(TuttiUI<?,?> parentUI) { <JPanel id='tableToolbar' layout='{new BorderLayout()}'> <JPanel layout='{new GridLayout(1,0)}' constraints='BorderLayout.WEST'> - <JButton id='createBenthosBatchButton' - onActionPerformed='handler.createBatch()'/> + <JButton id='createBenthosBatchButton'/> </JPanel> <JPanel constraints='BorderLayout.CENTER' layout='{new GridLayout()}'> <JPanel id='filterTablePane'> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUIHandler.java index c909e59..b2c2dec 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUIHandler.java @@ -35,7 +35,6 @@ import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.persistence.entities.data.SampleCategory; import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel; import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModelEntry; -import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValues; import fr.ifremer.tutti.persistence.entities.referential.Species; @@ -43,8 +42,6 @@ import fr.ifremer.tutti.service.DecoratorService; import fr.ifremer.tutti.service.ValidationService; import fr.ifremer.tutti.type.WeightUnit; import fr.ifremer.tutti.ui.swing.content.operation.catches.AbstractTuttiBatchTableUIHandler; -import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; -import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.SampleCategoryColumnIdentifier; import fr.ifremer.tutti.ui.swing.content.operation.catches.SampleCategoryComponent; @@ -53,12 +50,10 @@ import fr.ifremer.tutti.ui.swing.content.operation.catches.SpeciesBatchDecorator import fr.ifremer.tutti.ui.swing.content.operation.catches.SpeciesBatchDecoratorComparator; import fr.ifremer.tutti.ui.swing.content.operation.catches.SpeciesSortMode; import fr.ifremer.tutti.ui.swing.content.operation.catches.TableViewMode; -import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.CreateBenthosBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.CreateBenthosBatchUIModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.frequency.BenthosFrequencyCellComponent; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.frequency.BenthosFrequencyRowModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.split.SplitBenthosBatchRowModel; -import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.split.SplitBenthosBatchUI; import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor; import fr.ifremer.tutti.ui.swing.util.TuttiUI; import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; @@ -69,7 +64,6 @@ import fr.ifremer.tutti.ui.swing.util.comment.CommentCellRenderer; import fr.ifremer.tutti.ui.swing.util.computable.ComputableDataTableCell; import fr.ifremer.tutti.util.Weights; import jaxx.runtime.SwingUtil; -import jaxx.runtime.swing.renderer.DecoratorListCellRenderer; import jaxx.runtime.validator.swing.SwingValidator; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.ObjectUtils; @@ -84,12 +78,9 @@ import org.jdesktop.swingx.table.TableColumnExt; import org.jdesktop.swingx.table.TableColumnModelExt; import org.nuiton.decorator.Decorator; import org.nuiton.jaxx.application.swing.table.ColumnIdentifier; -import org.nuiton.jaxx.widgets.number.NumberEditor; import org.nuiton.validator.NuitonValidatorResult; -import javax.swing.JComboBox; import javax.swing.JComponent; -import javax.swing.JOptionPane; import javax.swing.RowFilter; import javax.swing.event.TableModelEvent; import javax.swing.event.TableModelListener; @@ -912,13 +903,13 @@ public class BenthosBatchUIHandler extends AbstractTuttiBatchTableUIHandler<Bent //-- Public methods --// //------------------------------------------------------------------------// - public void createBatch() { - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - CreateBenthosBatchUI createBatchEditor = parent.getBenthosTabCreateBatch(); + public SampleCategoryModel getSampleCategoryModel() { + return sampleCategoryModel; + } - createBatchEditor.getHandler().openUI(getModel()); - parent.getHandler().setBenthosSelectedCard(EditCatchesUIHandler.CREATE_BATCH_CARD); + public Integer getQualitative_unsorted_id() { + return qualitative_unsorted_id; } public void addBatch(CreateBenthosBatchUIModel batchRootRowModel) { @@ -967,241 +958,6 @@ public class BenthosBatchUIHandler extends AbstractTuttiBatchTableUIHandler<Bent } } - public void editFrequencies() { - - JXTable table = getTable(); - - int rowIndex = SwingUtil.getSelectedModelRow(table); - - TableColumnModelExt columnModel = (TableColumnModelExt) getTable().getColumnModel(); - - int columnIndex = columnModel.getColumnIndex(BenthosBatchTableModel.COMPUTED_NUMBER); - - TuttiUIUtil.doSelectCell(getTable(), rowIndex, columnIndex); - - BenthosFrequencyCellComponent.FrequencyCellEditor cellEditor = - (BenthosFrequencyCellComponent.FrequencyCellEditor) - columnModel.getColumnExt(columnIndex).getCellEditor(); - cellEditor.startEdit(); - } - - public void splitBatch() { - - JXTable table = getTable(); - - // get selected row - int rowIndex = SwingUtil.getSelectedModelRow(table); - - Preconditions.checkState(rowIndex != -1, - "Cant split batch if no batch selected"); - - BenthosBatchTableModel tableModel = getTableModel(); - - BenthosBatchRowModel parentBatch = tableModel.getEntry(rowIndex); - - boolean split = true; - if (parentBatch.getWeight() != null) { - String htmlMessage = String.format( - CONFIRMATION_FORMAT, - t("tutti.editBenthosBatch.split.weightNotNull.message"), - t("tutti.editBenthosBatch.split.weightNotNull.help")); - int i = JOptionPane.showConfirmDialog( - getTopestUI(), - htmlMessage, - t("tutti.editBenthosBatch.split.weightNotNull.title"), - JOptionPane.OK_CANCEL_OPTION); - - if (i == JOptionPane.OK_OPTION) { - parentBatch.setWeight(null); - - } else { - split = false; - } - } - - if (split) { - if (log.isDebugEnabled()) { - log.debug("Open split batch ui for row [" + rowIndex + ']'); - } - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - SplitBenthosBatchUI splitBatchEditor = parent.getBenthosTabSplitBatch(); - - parent.getHandler().splitBenthosBatch(parentBatch, splitBatchEditor); - } - } - - public void addBatchCategory() { - - // get table model - BenthosBatchTableModel tableModel = getTableModel(); - - // get selected row - int rowIndex = SwingUtil.getSelectedModelRow(getTable()); - Preconditions.checkState(rowIndex != -1, - "Cant split batch if no batch selected"); - - // get selected column - int columnIndex = SwingUtil.getSelectedModelColumn(getTable()); - Preconditions.checkState(columnIndex != -1, - "Cant split batch if no batch selected"); - - // get selected row - BenthosBatchRowModel selectedRow = tableModel.getEntry(rowIndex); - - // get his sample category - Integer sampleCategoryId = tableModel.getSampleCategoryId(columnIndex); - - // get the first ancestor row using this category - BenthosBatchRowModel firstAncestorRow = - selectedRow.getFirstAncestor(sampleCategoryId); - - // get his parent (the one we will edit) - BenthosBatchRowModel parentBatch = firstAncestorRow.getParentBatch(); - - if (log.isDebugEnabled()) { - log.debug("Open addChangeCategory batch ui for row [" + rowIndex + "] and category " + sampleCategoryId); - } - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - SplitBenthosBatchUI splitBatchEditor = - parent.getBenthosTabAddSampleCategoryBatch(); - - parent.getHandler().addSampleCategoryBenthosBatch( - parentBatch, - splitBatchEditor, - sampleCategoryId); - } - - public void changeBatchCategory() { - - // get table model - BenthosBatchTableModel tableModel = getTableModel(); - - // get selected row - int rowIndex = SwingUtil.getSelectedModelRow(getTable()); - - // get selected column - int columnIndex = SwingUtil.getSelectedModelColumn(getTable()); - - // get selected row - BenthosBatchRowModel selectedRow = tableModel.getEntry(rowIndex); - - // get his sample category - Integer sampleCategoryId = tableModel.getSampleCategoryId(columnIndex); - SampleCategoryModelEntry sampleCategoryEntry = sampleCategoryModel.getCategoryById(sampleCategoryId); - Caracteristic caracteristic = sampleCategoryEntry.getCaracteristic(); - - // get the first ancestor row using this category - BenthosBatchRowModel firstAncestorRow = - selectedRow.getFirstAncestor(sampleCategoryId); - - // get used values - Set<Serializable> usedValues = getSampleUsedValues(firstAncestorRow, - sampleCategoryId); - - // get the new selected value for this category - Serializable selectedItem; - - String categoryDecorated = decorate(caracteristic, DecoratorService.CARACTERISTIC_PARAMETER_ONLY); - String dialogTitle = t("tutti.editBenthosBatch.title.changeSampleCategoryValue", categoryDecorated); - - boolean numericType = caracteristic.isNumericType(); - - if (numericType) { - - // open a simple number editor - NumberEditor editor = new NumberEditor(); - editor.setNumberPattern(TuttiUI.DECIMAL3_PATTERN); - editor.setUseSign(false); -// editor.setUseFloat(true); - editor.setShowPopupButton(false); - editor.setShowReset(false); - - int response = JOptionPane.showConfirmDialog( - getUI(), - editor, - dialogTitle, - JOptionPane.OK_CANCEL_OPTION); - - if (response == JOptionPane.OK_OPTION) { - selectedItem = editor.getModel(); - } else { - // user cancel selection - selectedItem = null; - } - - if (usedValues.contains(selectedItem)) { - - // impossible de choisir cette valeur (déjà utilisée) - JOptionPane.showMessageDialog( - getTopestUI(), - t("tutti.editBenthosBatch.error.sampleCategoryValue.notAvailable", selectedItem, categoryDecorated)); - selectedItem = null; - } - - } else { - - // open a combobox to select new value - - List<CaracteristicQualitativeValue> availableValues = - Lists.newArrayList(caracteristic.getQualitativeValue()); - - boolean firstCategory = - sampleCategoryModel.getFirstCategoryId().equals(sampleCategoryId); - - if (firstCategory) { - - // remove the unsorted qualitative value - CaracteristicQualitativeValues.removeQualitativeValue(availableValues, qualitative_unsorted_id); - } - - availableValues.removeAll(usedValues); - - JComboBox editor = new JComboBox(); - editor.setRenderer(new DecoratorListCellRenderer(getDecorator(CaracteristicQualitativeValue.class, null))); - SwingUtil.fillComboBox(editor, availableValues, availableValues.get(0)); - - int response = JOptionPane.showConfirmDialog( - getTopestUI(), - editor, - dialogTitle, - JOptionPane.OK_CANCEL_OPTION); - - if (response == JOptionPane.OK_OPTION) { - selectedItem = (CaracteristicQualitativeValue) editor.getSelectedItem(); - } else { - // user cancel selection - selectedItem = null; - } - } - - if (log.isDebugEnabled()) { - log.debug("New selected category: " + selectedItem); - } - - if (selectedItem != null) { - - // update rows values - Serializable oldValue = tableModel.updateSampleCategorieValue(firstAncestorRow, - columnIndex, - selectedItem); - - // save the first ancestor row with the modified category value - saveRow(firstAncestorRow); - - if (!numericType) { - - // update speciesUsed cache - EditCatchesUIModel createBatchModel = ui.getParentContainer(EditCatchesUI.class).getModel(); - createBatchModel.replaceCaracteristicValue(firstAncestorRow.getSpecies(), (CaracteristicQualitativeValue) oldValue, (CaracteristicQualitativeValue) selectedItem); - - } - - } - - } - public void splitBatch(SampleCategoryModelEntry sampleCategoryDef, List<SplitBenthosBatchRowModel> rows, Float totalRowWeight) { @@ -1457,11 +1213,7 @@ public class BenthosBatchUIHandler extends AbstractTuttiBatchTableUIHandler<Bent } } - //------------------------------------------------------------------------// - //-- Internal methods --// - //------------------------------------------------------------------------// - - protected void saveRow(BenthosBatchRowModel row) { + public void saveRow(BenthosBatchRowModel row) { FishingOperation fishingOperation = getModel().getFishingOperation(); @@ -1524,6 +1276,47 @@ public class BenthosBatchUIHandler extends AbstractTuttiBatchTableUIHandler<Bent getModel().fireBatchUpdated(row); } + /** + * Return all the sample category values (of the given + * {@code sampleCategoryId}) for all brothers of the given {@code row}. + * + * @param row the row + * @param sampleCategoryId id of the sample category to seek in brothers of the given row + * @return all the sample category values (of the given + * {@code sampleCategoryId}) for all brothers of the given {@code row}. + */ + public Set<Serializable> getSampleUsedValues(BenthosBatchRowModel row, + int sampleCategoryId) { + + Set<Serializable> usedValues = Sets.newHashSet(); + List<BenthosBatchRowModel> childs; + if (row.isBatchRoot()) { + + // on a root must take all his brothers (but have no common ancestor...) + Species species = row.getSpecies(); + childs = Lists.newArrayList(); + for (BenthosBatchRowModel rowToScan : getModel().getRows()) { + if (rowToScan.isBatchRoot() && species.equals(rowToScan.getSpecies())) { + childs.add(rowToScan); + } + } + } else { + // on a son, must take all the brother directly from his father + BenthosBatchRowModel parentBatch = row.getParentBatch(); + childs = parentBatch.getChildBatch(); + } + + for (BenthosBatchRowModel child : childs) { + SampleCategory<?> category = child.getSampleCategoryById(sampleCategoryId); + usedValues.add(category.getCategoryValue()); + } + return usedValues; + } + + //------------------------------------------------------------------------// + //-- Internal methods --// + //------------------------------------------------------------------------// + protected void loadBatchRow(BenthosBatchRowModel parentRow, BenthosBatchRowModel newRow, Integer sampleCategoryId, @@ -1626,43 +1419,6 @@ public class BenthosBatchUIHandler extends AbstractTuttiBatchTableUIHandler<Bent return catchBean; } - /** - * Return all the sample category values (of the given - * {@code sampleCategoryId}) for all brothers of the given {@code row}. - * - * @param row the row - * @param sampleCategoryId id of the sample category to seek in brothers of the given row - * @return all the sample category values (of the given - * {@code sampleCategoryId}) for all brothers of the given {@code row}. - */ - protected Set<Serializable> getSampleUsedValues(BenthosBatchRowModel row, - int sampleCategoryId) { - - Set<Serializable> usedValues = Sets.newHashSet(); - List<BenthosBatchRowModel> childs; - if (row.isBatchRoot()) { - - // on a root must take all his brothers (but have no common ancestor...) - Species species = row.getSpecies(); - childs = Lists.newArrayList(); - for (BenthosBatchRowModel rowToScan : getModel().getRows()) { - if (rowToScan.isBatchRoot() && species.equals(rowToScan.getSpecies())) { - childs.add(rowToScan); - } - } - } else { - // on a son, must take all the brother directly from his father - BenthosBatchRowModel parentBatch = row.getParentBatch(); - childs = parentBatch.getChildBatch(); - } - - for (BenthosBatchRowModel child : childs) { - SampleCategory<?> category = child.getSampleCategoryById(sampleCategoryId); - usedValues.add(category.getCategoryValue()); - } - return usedValues; - } - protected SpeciesBatchDecoratorComparator<BenthosBatchRowModel> getSpeciesRowComparator() { TableColumnExt speciesColumn = SpeciesAbleBatchRowHelper.getSpeciesColumn(getTable()); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/ChangeBenthosBatchSampleCategoryAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/ChangeBenthosBatchSampleCategoryAction.java new file mode 100644 index 0000000..f0357b3 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/ChangeBenthosBatchSampleCategoryAction.java @@ -0,0 +1,181 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions; + +import com.google.common.collect.Lists; +import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel; +import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModelEntry; +import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; +import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValues; +import fr.ifremer.tutti.service.DecoratorService; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchRowModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchTableModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUIHandler; +import fr.ifremer.tutti.ui.swing.util.TuttiUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import jaxx.runtime.SwingUtil; +import jaxx.runtime.swing.renderer.DecoratorListCellRenderer; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.nuiton.jaxx.widgets.number.NumberEditor; + +import javax.swing.JComboBox; +import javax.swing.JOptionPane; +import java.io.Serializable; +import java.util.List; +import java.util.Set; + +import static org.nuiton.i18n.I18n.t; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class ChangeBenthosBatchSampleCategoryAction extends SimpleActionSupport<BenthosBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(ChangeBenthosBatchSampleCategoryAction.class); + + private static final long serialVersionUID = -6540241422935319461L; + + public ChangeBenthosBatchSampleCategoryAction(BenthosBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(BenthosBatchUI ui) { + + BenthosBatchUIHandler handler = ui.getHandler(); + + // get table model + BenthosBatchTableModel tableModel = handler.getTableModel(); + + // get selected row + int rowIndex = SwingUtil.getSelectedModelRow(ui.getTable()); + + // get selected column + int columnIndex = SwingUtil.getSelectedModelColumn(ui.getTable()); + + // get selected row + BenthosBatchRowModel selectedRow = tableModel.getEntry(rowIndex); + + SampleCategoryModel sampleCategoryModel = handler.getSampleCategoryModel(); + + // get his sample category + Integer sampleCategoryId = tableModel.getSampleCategoryId(columnIndex); + SampleCategoryModelEntry sampleCategoryEntry = sampleCategoryModel.getCategoryById(sampleCategoryId); + Caracteristic caracteristic = sampleCategoryEntry.getCaracteristic(); + + // get the first ancestor row using this category + BenthosBatchRowModel firstAncestorRow = + selectedRow.getFirstAncestor(sampleCategoryId); + + // get used values + Set<Serializable> usedValues = handler.getSampleUsedValues(firstAncestorRow, sampleCategoryId); + + // get the new selected value for this category + Serializable selectedItem; + + String categoryDecorated = handler.getDecorator(caracteristic.getClass(), DecoratorService.CARACTERISTIC_PARAMETER_ONLY).toString(caracteristic); + String dialogTitle = t("tutti.editBenthosBatch.title.changeSampleCategoryValue", categoryDecorated); + + boolean numericType = caracteristic.isNumericType(); + + if (numericType) { + + // open a simple number editor + NumberEditor editor = new NumberEditor(); + editor.setNumberPattern(TuttiUI.DECIMAL3_PATTERN); + editor.setUseSign(false); +// editor.setUseFloat(true); + editor.setShowPopupButton(false); + editor.setShowReset(false); + + int response = JOptionPane.showConfirmDialog( + ui, + editor, + dialogTitle, + JOptionPane.OK_CANCEL_OPTION); + + if (response == JOptionPane.OK_OPTION) { + selectedItem = editor.getModel(); + } else { + // user cancel selection + selectedItem = null; + } + + if (usedValues.contains(selectedItem)) { + + // impossible de choisir cette valeur (déjà utilisée) + JOptionPane.showMessageDialog( + handler.getTopestUI(), + t("tutti.editBenthosBatch.error.sampleCategoryValue.notAvailable", selectedItem, categoryDecorated)); + selectedItem = null; + } + + } else { + + // open a combobox to select new value + + List<CaracteristicQualitativeValue> availableValues = + Lists.newArrayList(caracteristic.getQualitativeValue()); + + boolean firstCategory = + sampleCategoryModel.getFirstCategoryId().equals(sampleCategoryId); + + if (firstCategory) { + + // remove the unsorted qualitative value + CaracteristicQualitativeValues.removeQualitativeValue(availableValues, handler.getQualitative_unsorted_id()); + } + + availableValues.removeAll(usedValues); + + JComboBox editor = new JComboBox(); + editor.setRenderer(new DecoratorListCellRenderer(handler.getDecorator(CaracteristicQualitativeValue.class, null))); + SwingUtil.fillComboBox(editor, availableValues, availableValues.get(0)); + + int response = JOptionPane.showConfirmDialog( + handler.getTopestUI(), + editor, + dialogTitle, + JOptionPane.OK_CANCEL_OPTION); + + if (response == JOptionPane.OK_OPTION) { + selectedItem = (CaracteristicQualitativeValue) editor.getSelectedItem(); + } else { + // user cancel selection + selectedItem = null; + } + } + + if (log.isDebugEnabled()) { + log.debug("New selected category: " + selectedItem); + } + + if (selectedItem != null) { + + // update rows values + Serializable oldValue = tableModel.updateSampleCategorieValue(firstAncestorRow, + columnIndex, + selectedItem); + + // save the first ancestor row with the modified category value + handler.saveRow(firstAncestorRow); + + if (!numericType) { + + // update speciesUsed cache + EditCatchesUIModel createBatchModel = ui.getParentContainer(EditCatchesUI.class).getModel(); + createBatchModel.replaceCaracteristicValue(firstAncestorRow.getSpecies(), (CaracteristicQualitativeValue) oldValue, (CaracteristicQualitativeValue) selectedItem); + + } + + } + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CreateBenthosMelagAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/CreateBenthosMelagAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CreateBenthosMelagAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/CreateBenthosMelagAction.java index 6f2d688..83eb1eb 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CreateBenthosMelagAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/CreateBenthosMelagAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions; /* * #%L @@ -30,6 +30,7 @@ import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchT import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.util.species.EnterMelagWeightUI; import fr.ifremer.tutti.util.Weights; import jaxx.runtime.SwingUtil; @@ -44,7 +45,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <kmorin@codelutin.com> * @since 1.0.2 */ -public class CreateBenthosMelagAction extends AbstractTuttiAction<BenthosBatchUIModel, BenthosBatchUI, BenthosBatchUIHandler> { +public class CreateBenthosMelagAction extends LongActionSupport<BenthosBatchUIModel, BenthosBatchUI, BenthosBatchUIHandler> { /** * Dictionnaire des lots du melag associé a leur poids d'echantillonnage (si un lot possède un poids de categorisation, diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostBenthosAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/ExportMultiPostBenthosAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostBenthosAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/ExportMultiPostBenthosAction.java index 41f9b2d..411db39 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostBenthosAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/ExportMultiPostBenthosAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.catches.multipost.MultiPostExportService; +import fr.ifremer.tutti.ui.swing.content.operation.catches.actions.ExportMultiPostActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUIModel; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostBenthosAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/ImportMultiPostBenthosAction.java similarity index 96% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostBenthosAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/ImportMultiPostBenthosAction.java index c27f527..a9266e5 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostBenthosAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/ImportMultiPostBenthosAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions; /* * #%L @@ -27,6 +27,7 @@ import fr.ifremer.tutti.persistence.entities.data.CatchBatch; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.catches.multipost.MultiPostImportService; import fr.ifremer.tutti.type.WeightUnit; +import fr.ifremer.tutti.ui.swing.content.operation.catches.actions.ImportMultiPostActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUIModel; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/OpenAddBenthosBatchSampleCategoryUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/OpenAddBenthosBatchSampleCategoryUIAction.java new file mode 100644 index 0000000..73fd5cd --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/OpenAddBenthosBatchSampleCategoryUIAction.java @@ -0,0 +1,83 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions; + +import com.google.common.base.Preconditions; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchRowModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchTableModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.split.SplitBenthosBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import jaxx.runtime.SwingUtil; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import static org.nuiton.i18n.I18n.t; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class OpenAddBenthosBatchSampleCategoryUIAction extends SimpleActionSupport<BenthosBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(OpenAddBenthosBatchSampleCategoryUIAction.class); + + private static final long serialVersionUID = -6540241422935319461L; + + public OpenAddBenthosBatchSampleCategoryUIAction(BenthosBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(BenthosBatchUI ui) { + + // get table model + BenthosBatchTableModel tableModel = ui.getHandler().getTableModel(); + + // get selected row + int rowIndex = SwingUtil.getSelectedModelRow(ui.getTable()); + Preconditions.checkState(rowIndex != -1, "Cant split batch if no batch selected"); + + // get selected column + int columnIndex = SwingUtil.getSelectedModelColumn(ui.getTable()); + Preconditions.checkState(columnIndex != -1, "Cant split batch if no batch selected"); + + // get selected row + BenthosBatchRowModel selectedRow = tableModel.getEntry(rowIndex); + + // get his sample category + Integer sampleCategoryId = tableModel.getSampleCategoryId(columnIndex); + + // get the first ancestor row using this category + BenthosBatchRowModel firstAncestorRow = selectedRow.getFirstAncestor(sampleCategoryId); + + // get his parent (the one we will edit) + BenthosBatchRowModel parentBatch = firstAncestorRow.getParentBatch(); + + if (log.isDebugEnabled()) { + log.debug("Open addChangeCategory batch ui for row [" + rowIndex + "] and category " + sampleCategoryId); + } + + EditCatchesUI parentUI = ui.getParentContainer(EditCatchesUI.class); + SplitBenthosBatchUI splitBatchEditor = parentUI.getBenthosTabAddSampleCategoryBatch(); + +// parentUI.getHandler().addSampleCategoryBenthosBatch(parentBatch, splitBatchEditor, sampleCategoryId); + + + splitBatchEditor.getHandler().editBatch(parentBatch, sampleCategoryId); + + // open split editor + parentUI.getHandler().setBenthosSelectedCard(EditCatchesUIHandler.ADD_SAMPLE_CATEGORY_BATCH_CARD); + + // update title + String title = parentUI.getHandler().buildReminderLabelTitle(parentBatch.getSpecies(), + parentBatch, + parentUI.getBenthosTabFishingOperationReminderLabel().getTitle(), + t("tutti.addSampleCategoryBenthosBatch.title")); + parentUI.getBenthosTabAddSampleCategoryBatchReminderLabel().setTitle(title); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/OpenCreateBenthosBatchUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/OpenCreateBenthosBatchUIAction.java new file mode 100644 index 0000000..a9f4db7 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/OpenCreateBenthosBatchUIAction.java @@ -0,0 +1,33 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.CreateBenthosBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class OpenCreateBenthosBatchUIAction extends SimpleActionSupport<BenthosBatchUI> { + + private static final long serialVersionUID = -6540241422935319461L; + + public OpenCreateBenthosBatchUIAction(BenthosBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(BenthosBatchUI ui) { + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + CreateBenthosBatchUI createBatchEditor = parent.getBenthosTabCreateBatch(); + + createBatchEditor.getHandler().openUI(ui.getModel()); + parent.getHandler().setBenthosSelectedCard(EditCatchesUIHandler.CREATE_BATCH_CARD); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/OpenEditBenthosBatchFrequencyUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/OpenEditBenthosBatchFrequencyUIAction.java new file mode 100644 index 0000000..8ccf412 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/OpenEditBenthosBatchFrequencyUIAction.java @@ -0,0 +1,51 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchTableModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.frequency.BenthosFrequencyCellComponent; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import jaxx.runtime.SwingUtil; +import jaxx.runtime.swing.JTables; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.jdesktop.swingx.JXTable; +import org.jdesktop.swingx.table.TableColumnModelExt; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class OpenEditBenthosBatchFrequencyUIAction extends SimpleActionSupport<BenthosBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(OpenEditBenthosBatchFrequencyUIAction.class); + + private static final long serialVersionUID = -6540241422935319461L; + + public OpenEditBenthosBatchFrequencyUIAction(BenthosBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(BenthosBatchUI ui) { + + JXTable table = ui.getTable(); + + int rowIndex = SwingUtil.getSelectedModelRow(table); + + TableColumnModelExt columnModel = (TableColumnModelExt) table.getColumnModel(); + + int columnIndex = columnModel.getColumnIndex(BenthosBatchTableModel.COMPUTED_NUMBER); + + JTables.doSelectCell(table, rowIndex, columnIndex); + + BenthosFrequencyCellComponent.FrequencyCellEditor cellEditor = + (BenthosFrequencyCellComponent.FrequencyCellEditor) + columnModel.getColumnExt(columnIndex).getCellEditor(); + cellEditor.startEdit(); + + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/OpenSplitBenthosBatchUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/OpenSplitBenthosBatchUIAction.java new file mode 100644 index 0000000..23559e0 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/OpenSplitBenthosBatchUIAction.java @@ -0,0 +1,98 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions; + +import com.google.common.base.Preconditions; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchRowModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchTableModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUIHandler; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.split.SplitBenthosBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import jaxx.runtime.SwingUtil; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.jdesktop.swingx.JXTable; + +import javax.swing.JOptionPane; + +import static org.nuiton.i18n.I18n.t; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class OpenSplitBenthosBatchUIAction extends SimpleActionSupport<BenthosBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(OpenSplitBenthosBatchUIAction.class); + + private static final long serialVersionUID = -6540241422935319461L; + + public OpenSplitBenthosBatchUIAction(BenthosBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(BenthosBatchUI ui) { + + JXTable table = ui.getTable(); + + // get selected row + int rowIndex = SwingUtil.getSelectedModelRow(table); + + Preconditions.checkState(rowIndex != -1, "Cant split batch if no batch selected"); + + BenthosBatchUIHandler handler = ui.getHandler(); + BenthosBatchTableModel tableModel = handler.getTableModel(); + + BenthosBatchRowModel parentBatch = tableModel.getEntry(rowIndex); + + boolean split = true; + if (parentBatch.getWeight() != null) { + String htmlMessage = String.format( + BenthosBatchUIHandler.CONFIRMATION_FORMAT, + t("tutti.editBenthosBatch.split.weightNotNull.message"), + t("tutti.editBenthosBatch.split.weightNotNull.help")); + int i = JOptionPane.showConfirmDialog( + handler.getTopestUI(), + htmlMessage, + t("tutti.editBenthosBatch.split.weightNotNull.title"), + JOptionPane.OK_CANCEL_OPTION); + + if (i == JOptionPane.OK_OPTION) { + parentBatch.setWeight(null); + + } else { + split = false; + } + } + + if (split) { + if (log.isDebugEnabled()) { + log.debug("Open split batch ui for row [" + rowIndex + ']'); + } + + EditCatchesUI parentUI = ui.getParentContainer(EditCatchesUI.class); + SplitBenthosBatchUI splitBatchEditor = parentUI.getBenthosTabSplitBatch(); + +// parentUI.getHandler().splitBenthosBatch(parentBatch, splitBatchEditor); + + splitBatchEditor.getHandler().editBatch(parentBatch); + + // open split editor + parentUI.getHandler().setBenthosSelectedCard(EditCatchesUIHandler.SPLIT_BATCH_CARD); + + // update title + String title = handler.buildReminderLabelTitle(parentBatch.getSpecies(), + parentBatch, + parentUI.getBenthosTabFishingOperationReminderLabel().getTitle(), + t("tutti.splitBenthosBatch.title")); + parentUI.getBenthosTabSplitBatchReminderLabel().setTitle(title); + + } + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveBenthosBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RemoveBenthosBatchAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveBenthosBatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RemoveBenthosBatchAction.java index 16e8cba..e58f5fd 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveBenthosBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RemoveBenthosBatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions; /* * #%L @@ -32,6 +32,7 @@ import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchU import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUIModel; import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import jaxx.runtime.SwingUtil; import org.jdesktop.swingx.JXTable; @@ -46,7 +47,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class RemoveBenthosBatchAction extends AbstractTuttiAction<BenthosBatchUIModel, BenthosBatchUI, BenthosBatchUIHandler> { +public class RemoveBenthosBatchAction extends LongActionSupport<BenthosBatchUIModel, BenthosBatchUI, BenthosBatchUIHandler> { /** * Selected row to treat. diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveBenthosSubBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RemoveBenthosSubBatchAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveBenthosSubBatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RemoveBenthosSubBatchAction.java index 0643b9e..66b8f32 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveBenthosSubBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RemoveBenthosSubBatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions; /* * #%L @@ -31,6 +31,7 @@ import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchU import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUIModel; import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import jaxx.runtime.SwingUtil; import org.jdesktop.swingx.JXTable; @@ -45,7 +46,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class RemoveBenthosSubBatchAction extends AbstractTuttiAction<BenthosBatchUIModel, BenthosBatchUI, BenthosBatchUIHandler> { +public class RemoveBenthosSubBatchAction extends LongActionSupport<BenthosBatchUIModel, BenthosBatchUI, BenthosBatchUIHandler> { /** * Selected row to treat. diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RenameBenthosBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RenameBenthosBatchAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RenameBenthosBatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RenameBenthosBatchAction.java index e595d26..2d82743 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RenameBenthosBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RenameBenthosBatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.actions; /* * #%L @@ -32,6 +32,7 @@ import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchT import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import jaxx.runtime.SwingUtil; import org.jdesktop.swingx.JXTable; @@ -47,7 +48,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class RenameBenthosBatchAction extends AbstractTuttiAction<BenthosBatchUIModel, BenthosBatchUI, BenthosBatchUIHandler> { +public class RenameBenthosBatchAction extends LongActionSupport<BenthosBatchUIModel, BenthosBatchUI, BenthosBatchUIHandler> { protected Species selectedSpecies; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUI.css index 75e1332..a509ccd 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUI.css @@ -141,7 +141,7 @@ NumberEditor { text: "tutti.createBenthosBatch.action.addSpecies"; toolTipText: "tutti.createBenthosBatch.action.addSpecies.tip"; i18nMnemonic: "tutti.createBenthosBatch.action.addSpecies.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SelectSpeciesForBenthosBatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.actions.SelectSpeciesForBenthosBatchAction.class}; _help: {"tutti.createBenthosBatch.action.addSpecies.help"}; } @@ -151,6 +151,7 @@ NumberEditor { toolTipText: "tutti.createBenthosBatch.action.saveAndContinue.tip"; i18nMnemonic: "tutti.createBenthosBatch.action.saveAndContinue.mnemonic"; enabled: {model.isValid()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.actions.CreateBenthosBatchAndContinueAction.class}; _help: {"tutti.createBenthosBatch.action.saveAndContinue.help"}; } @@ -160,6 +161,7 @@ NumberEditor { toolTipText: "tutti.createBenthosBatch.action.saveAndClose.tip"; i18nMnemonic: "tutti.createBenthosBatch.action.saveAndClose.mnemonic"; enabled: {model.isValid()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.actions.CreateBenthosBatchAndCloseAction.class}; _help: {"tutti.createBenthosBatch.action.saveAndClose.help"}; } @@ -168,5 +170,6 @@ NumberEditor { text: "tutti.createBenthosBatch.action.cancel"; toolTipText: "tutti.createBenthosBatch.action.cancel.tip"; i18nMnemonic: "tutti.createBenthosBatch.action.cancel.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.actions.CreateBenthosBatchCancelAction.class}; _help: {"tutti.createBenthosBatch.action.cancel.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUI.jaxx index 42124f7..9ff2abf 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUI.jaxx @@ -157,8 +157,8 @@ public CreateBenthosBatchUI(EditCatchesUI parentUI) { <!-- Form Actions --> <JPanel layout='{new GridLayout(1, 0)}' constraints='BorderLayout.SOUTH'> - <JButton id='cancelButton' onActionPerformed='handler.cancel()'/> - <JButton id='saveAndContinueButton' onActionPerformed='handler.saveAndContinue()'/> - <JButton id='saveAndCloseButton' onActionPerformed='handler.saveAndClose()'/> + <JButton id='cancelButton'/> + <JButton id='saveAndContinueButton'/> + <JButton id='saveAndCloseButton'/> </JPanel> </JPanel> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUIHandler.java index fb70abd..bd099e8 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUIHandler.java @@ -26,24 +26,20 @@ import com.google.common.base.Preconditions; import com.google.common.collect.Lists; import com.google.common.collect.Multimap; import fr.ifremer.adagio.core.dao.referential.pmfm.QualitativeValueId; -import org.nuiton.jaxx.application.swing.util.Cancelable; -import fr.ifremer.tutti.type.WeightUnit; import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel; import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModelEntry; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.service.DecoratorService; +import fr.ifremer.tutti.type.WeightUnit; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; -import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUIModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.split.SplitBenthosBatchRowModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.split.SplitBenthosBatchTableModel; import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor; import fr.ifremer.tutti.ui.swing.util.TuttiUI; -import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUI; -import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUIModel; import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableUIHandler; import jaxx.runtime.validator.swing.SwingValidator; import org.apache.commons.logging.Log; @@ -52,7 +48,6 @@ import org.jdesktop.swingx.JXTable; import org.jdesktop.swingx.table.DefaultTableColumnModelExt; import javax.swing.JComponent; -import java.awt.Dimension; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.util.List; @@ -63,7 +58,7 @@ import java.util.List; * @author tchemit <chemit@codelutin.com> * @since 0.3 */ -public class CreateBenthosBatchUIHandler extends AbstractTuttiTableUIHandler<SplitBenthosBatchRowModel, CreateBenthosBatchUIModel, CreateBenthosBatchUI> implements Cancelable { +public class CreateBenthosBatchUIHandler extends AbstractTuttiTableUIHandler<SplitBenthosBatchRowModel, CreateBenthosBatchUIModel, CreateBenthosBatchUI> { /** Logger. */ private static final Log log = @@ -336,18 +331,6 @@ public class CreateBenthosBatchUIHandler extends AbstractTuttiTableUIHandler<Spl } //------------------------------------------------------------------------// - //-- Cancelable methods --// - //------------------------------------------------------------------------// - - @Override - public void cancel() { - if (log.isDebugEnabled()) { - log.debug("Cancel UI " + ui); - } - closeUI(ui); - } - - //------------------------------------------------------------------------// //-- Public methods --// //------------------------------------------------------------------------// @@ -384,33 +367,6 @@ public class CreateBenthosBatchUIHandler extends AbstractTuttiTableUIHandler<Spl model.setAvailableSpecies(speciesToUse); } - public void saveAndContinue() { - - if (log.isDebugEnabled()) { - log.debug("Save and Continue UI " + ui); - } - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - BenthosBatchUI benthosTabContent = parent.getBenthosTabContent(); - benthosTabContent.getHandler().addBatch(getModel()); - - // re-open this screen - openUI(benthosTabContent.getModel()); - } - - public void saveAndClose() { - - if (log.isDebugEnabled()) { - log.debug("Save and Close UI " + ui); - } - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - parent.getBenthosTabContent().getHandler().addBatch(getModel()); - - // close dialog - closeUI(ui); - } - //------------------------------------------------------------------------// //-- Internal methods --// //------------------------------------------------------------------------// diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/CreateBenthosBatchAndCloseAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/CreateBenthosBatchAndCloseAction.java new file mode 100644 index 0000000..2da5d20 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/CreateBenthosBatchAndCloseAction.java @@ -0,0 +1,40 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.CreateBenthosBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CreateBenthosBatchAndCloseAction extends SimpleActionSupport<CreateBenthosBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CreateBenthosBatchAndCloseAction.class); + + private static final long serialVersionUID = 1L; + + public CreateBenthosBatchAndCloseAction(CreateBenthosBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CreateBenthosBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Save and Close UI " + ui); + } + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + parent.getBenthosTabContent().getHandler().addBatch(ui.getModel()); + + // close dialog + ui.getHandler().onCloseUI(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/CreateBenthosBatchAndContinueAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/CreateBenthosBatchAndContinueAction.java new file mode 100644 index 0000000..8429206 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/CreateBenthosBatchAndContinueAction.java @@ -0,0 +1,43 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.CreateBenthosBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CreateBenthosBatchAndContinueAction extends SimpleActionSupport<CreateBenthosBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CreateBenthosBatchAndContinueAction.class); + + private static final long serialVersionUID = 1L; + + public CreateBenthosBatchAndContinueAction(CreateBenthosBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CreateBenthosBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Save and Continue UI " + ui); + } + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + BenthosBatchUI benthosTabContent = parent.getBenthosTabContent(); + benthosTabContent.getHandler().addBatch(ui.getModel()); + + // re-open this screen + ui.getHandler().openUI(benthosTabContent.getModel()); + + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/CreateBenthosBatchCancelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/CreateBenthosBatchCancelAction.java new file mode 100644 index 0000000..f67e32d --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/CreateBenthosBatchCancelAction.java @@ -0,0 +1,35 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.CreateBenthosBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CreateBenthosBatchCancelAction extends SimpleActionSupport<CreateBenthosBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CreateBenthosBatchCancelAction.class); + + private static final long serialVersionUID = 1L; + + public CreateBenthosBatchCancelAction(CreateBenthosBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CreateBenthosBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Cancel UI " + ui); + } + + ui.getHandler().onCloseUI(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectSpeciesForBenthosBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/SelectSpeciesForBenthosBatchAction.java similarity index 92% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectSpeciesForBenthosBatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/SelectSpeciesForBenthosBatchAction.java index 945c3c3..013c8c1 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectSpeciesForBenthosBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/SelectSpeciesForBenthosBatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.collect.Lists; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.persistence.entities.referential.Speciess; import fr.ifremer.tutti.service.DecoratorService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.CreateBenthosBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.CreateBenthosBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.create.CreateBenthosBatchUIModel; @@ -41,7 +42,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <kmorin@codelutin.com> * @since 1.0 */ -public class SelectSpeciesForBenthosBatchAction extends AbstractTuttiAction<CreateBenthosBatchUIModel, CreateBenthosBatchUI, CreateBenthosBatchUIHandler> { +public class SelectSpeciesForBenthosBatchAction extends LongActionSupport<CreateBenthosBatchUIModel, CreateBenthosBatchUI, CreateBenthosBatchUIHandler> { protected List<Species> allSpecies; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUI.css index f7ef117..90ff746 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUI.css @@ -81,6 +81,7 @@ text: "tutti.splitBenthosBatch.action.cancel"; toolTipText: "tutti.splitBenthosBatch.action.cancel.tip"; i18nMnemonic: "tutti.splitBenthosBatch.action.cancel.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.split.actions.SplitBenthosBatchCancelAction.class}; _help: {"tutti.splitBenthosBatch.action.cancel.help"}; } @@ -90,5 +91,6 @@ toolTipText: "tutti.splitBenthosBatch.action.save.tip"; i18nMnemonic: "tutti.splitBenthosBatch.action.save.mnemonic"; enabled: {model.isValid()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.split.actions.SplitBenthosBatchSaveAction.class}; _help: {"tutti.splitBenthosBatch.action.save.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUI.jaxx index b40fb21..740eaff 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUI.jaxx @@ -108,8 +108,8 @@ public SplitBenthosBatchUI(EditCatchesUI parentUI) { <!-- actions --> <JPanel id='actionPanel' layout='{new GridLayout(1, 0)}' constraints='BorderLayout.SOUTH'> - <JButton id='cancelButton' onActionPerformed='handler.cancel()'/> - <JButton id='saveButton' onActionPerformed='handler.save()'/> + <JButton id='cancelButton'/> + <JButton id='saveButton'/> </JPanel> </JPanel> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUIHandler.java index a06fb5d..625aae1 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUIHandler.java @@ -26,7 +26,6 @@ import com.google.common.base.Function; import com.google.common.base.Preconditions; import com.google.common.collect.Lists; import com.google.common.collect.Maps; -import org.nuiton.jaxx.application.swing.util.Cancelable; import fr.ifremer.tutti.persistence.entities.data.SampleCategory; import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel; import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModelEntry; @@ -61,8 +60,7 @@ import java.util.Map; * @author tchemit <chemit@codelutin.com> * @since 0.3 */ -public class SplitBenthosBatchUIHandler - extends AbstractTuttiTableUIHandler<SplitBenthosBatchRowModel, SplitBenthosBatchUIModel, SplitBenthosBatchUI> implements Cancelable { +public class SplitBenthosBatchUIHandler extends AbstractTuttiTableUIHandler<SplitBenthosBatchRowModel, SplitBenthosBatchUIModel, SplitBenthosBatchUI> { /** Logger. */ private static final Log log = @@ -240,19 +238,6 @@ public class SplitBenthosBatchUIHandler } //------------------------------------------------------------------------// - //-- Cancelable methods --// - //------------------------------------------------------------------------// - - @Override - public void cancel() { - - if (log.isDebugEnabled()) { - log.debug("Cancel UI " + ui); - } - closeUI(ui); - } - - //------------------------------------------------------------------------// //-- Public methods --// //------------------------------------------------------------------------// @@ -364,33 +349,6 @@ public class SplitBenthosBatchUIHandler getTableModel().fireTableDataChanged(); } - public void save() { - - if (log.isDebugEnabled()) { - log.debug("Save UI " + ui); - } - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - SplitBenthosBatchUIModel model = getModel(); - if (model.isValid()) { - if (model.isSplitMode()) { - parent.getBenthosTabContent().getHandler().splitBatch( - model.getSelectedCategory(), - model.getRows(), - model.getSampleWeight()); - } else { - parent.getBenthosTabContent().getHandler().addSampleCategoryBatch( - model.getBatch(), - model.getSelectedCategory(), - model.getRows(), - model.getSampleWeight()); - } - } - - // close dialog - closeUI(ui); - } - //------------------------------------------------------------------------// //-- Internal methods --// //------------------------------------------------------------------------// diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/actions/SplitBenthosBatchCancelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/actions/SplitBenthosBatchCancelAction.java new file mode 100644 index 0000000..b36a54b --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/actions/SplitBenthosBatchCancelAction.java @@ -0,0 +1,34 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.split.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.split.SplitBenthosBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class SplitBenthosBatchCancelAction extends SimpleActionSupport<SplitBenthosBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(SplitBenthosBatchCancelAction.class); + + private static final long serialVersionUID = 1L; + + public SplitBenthosBatchCancelAction(SplitBenthosBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(SplitBenthosBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Cancel UI " + ui); + } + ui.getHandler().onCloseUI(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/actions/SplitBenthosBatchSaveAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/actions/SplitBenthosBatchSaveAction.java new file mode 100644 index 0000000..1a85f66 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/actions/SplitBenthosBatchSaveAction.java @@ -0,0 +1,55 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.split.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.split.SplitBenthosBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.split.SplitBenthosBatchUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class SplitBenthosBatchSaveAction extends SimpleActionSupport<SplitBenthosBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(SplitBenthosBatchSaveAction.class); + + private static final long serialVersionUID = 1L; + + public SplitBenthosBatchSaveAction(SplitBenthosBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(SplitBenthosBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Save UI " + ui); + } + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + SplitBenthosBatchUIModel model = ui.getModel(); + if (model.isValid()) { + if (model.isSplitMode()) { + parent.getBenthosTabContent().getHandler().splitBatch( + model.getSelectedCategory(), + model.getRows(), + model.getSampleWeight()); + } else { + parent.getBenthosTabContent().getHandler().addSampleCategoryBatch( + model.getBatch(), + model.getSelectedCategory(), + model.getRows(), + model.getSampleWeight()); + } + } + + // close dialog + ui.getHandler().onCloseUI(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUI.css index 1373833..67a3afb 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUI.css @@ -63,7 +63,7 @@ text: "tutti.editIndividualObservationBatch.action.importMultiPost"; toolTipText: "tutti.editIndividualObservationBatch.action.importMultiPost.tip"; i18nMnemonic: "tutti.editIndividualObservationBatch.action.importMultiPost.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportMultiPostIndividualObservationAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.actions.ImportMultiPostIndividualObservationAction.class}; _help: {"tutti.editIndividualObservationBatch.action.importMultiPost.help"}; } @@ -72,7 +72,7 @@ text: "tutti.editIndividualObservationBatch.action.exportMultiPost"; toolTipText: "tutti.editIndividualObservationBatch.action.exportMultiPost.tip"; i18nMnemonic: "tutti.editIndividualObservationBatch.action.exportMultiPost.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportMultiPostIndividualObservationAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.actions.ExportMultiPostIndividualObservationAction.class}; _help: {"tutti.editIndividualObservationBatch.action.exportMultiPost.help"}; } @@ -81,6 +81,7 @@ text: "tutti.editIndividualObservationBatch.action.createBatch"; toolTipText: "tutti.editIndividualObservationBatch.action.createBatch.tip"; i18nMnemonic: "tutti.editIndividualObservationBatch.action.createBatch.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.actions.OpenCreateIndividualObservationBatchUIAction.class}; _help: {"tutti.editIndividualObservationBatch.action.createBatch.help"}; } @@ -89,7 +90,7 @@ text: "tutti.editIndividualObservationBatch.action.removeBatch"; toolTipText: "tutti.editIndividualObservationBatch.action.removeBatch.tip"; i18nMnemonic: "tutti.editIndividualObservationBatch.action.removeBatch.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.RemoveIndividualObservationBatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.actions.RemoveIndividualObservationBatchAction.class}; enabled: {model.isRemoveBatchEnabled()}; _help: {"tutti.editIndividualObservationBatch.action.removeBatch.help"}; } @@ -99,7 +100,7 @@ text: "tutti.editIndividualObservationBatch.action.removeAllBatch"; toolTipText: "tutti.editIndividualObservationBatch.action.removeAllBatch.tip"; i18nMnemonic: "tutti.editIndividualObservationBatch.action.removeAllBatch.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.RemoveAllIndividualObservationBatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.actions.RemoveAllIndividualObservationBatchAction.class}; enabled: {model.isRemoveBatchEnabled()}; _help: {"tutti.editIndividualObservationBatch.action.removeAllBatch.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUI.jaxx index 668d4c5..75d9b08 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUI.jaxx @@ -83,8 +83,7 @@ public IndividualObservationBatchUI(TuttiUI<?,?> parentUI) { layout='{new BorderLayout()}'> <JPanel layout='{new GridLayout(1,0)}' constraints='BorderLayout.WEST'> - <JButton id='createIndividualObservationBatchButton' - onActionPerformed='handler.createBatch()'/> + <JButton id='createIndividualObservationBatchButton'/> </JPanel> </JPanel> @@ -94,8 +93,4 @@ public IndividualObservationBatchUI(TuttiUI<?,?> parentUI) { onKeyPressed='handler.openRowMenu(event, tablePopup)'/> </JScrollPane> - <!--JPanel constraints='BorderLayout.SOUTH' - minimumSize="{new Dimension(10,30)}" - maximumSize="{new Dimension(10,30)}" - preferredSize="{new Dimension(10,30)}"/--> </JPanel> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUIHandler.java index 3d89b52..d6398a2 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUIHandler.java @@ -40,7 +40,6 @@ import fr.ifremer.tutti.ui.swing.content.operation.catches.AbstractTuttiBatchTab import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; -import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.CreateIndividualObservationBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.CreateIndividualObservationBatchUIModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchRowModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUIModel; @@ -460,15 +459,6 @@ public class IndividualObservationBatchUIHandler //-- Public methods --// //------------------------------------------------------------------------// - public void createBatch() { - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - CreateIndividualObservationBatchUI createBatchEditor = parent.getIndividualObservationTabCreateBatch(); - - createBatchEditor.getHandler().openUI(getModel()); - parent.getHandler().setIndividualObservationSelectedCard(EditCatchesUIHandler.CREATE_BATCH_CARD); - } - public void addBatch(CreateIndividualObservationBatchUIModel model) { if (model.isValid()) { diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostIndividualObservationAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/ExportMultiPostIndividualObservationAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostIndividualObservationAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/ExportMultiPostIndividualObservationAction.java index 41296d8..087aff7 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostIndividualObservationAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/ExportMultiPostIndividualObservationAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.catches.multipost.MultiPostExportService; +import fr.ifremer.tutti.ui.swing.content.operation.catches.actions.ExportMultiPostActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchUIModel; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostIndividualObservationAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/ImportMultiPostIndividualObservationAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostIndividualObservationAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/ImportMultiPostIndividualObservationAction.java index f279581..2749303 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostIndividualObservationAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/ImportMultiPostIndividualObservationAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.catches.multipost.MultiPostImportService; +import fr.ifremer.tutti.ui.swing.content.operation.catches.actions.ImportMultiPostActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchUIModel; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/OpenCreateIndividualObservationBatchUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/OpenCreateIndividualObservationBatchUIAction.java new file mode 100644 index 0000000..dd319cf --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/OpenCreateIndividualObservationBatchUIAction.java @@ -0,0 +1,38 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; +import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.CreateIndividualObservationBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class OpenCreateIndividualObservationBatchUIAction extends SimpleActionSupport<IndividualObservationBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(OpenCreateIndividualObservationBatchUIAction.class); + + private static final long serialVersionUID = 1L; + + public OpenCreateIndividualObservationBatchUIAction(IndividualObservationBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(IndividualObservationBatchUI ui) { + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + CreateIndividualObservationBatchUI createBatchEditor = parent.getIndividualObservationTabCreateBatch(); + + createBatchEditor.getHandler().openUI(ui.getModel()); + parent.getHandler().setIndividualObservationSelectedCard(EditCatchesUIHandler.CREATE_BATCH_CARD); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveAllIndividualObservationBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/RemoveAllIndividualObservationBatchAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveAllIndividualObservationBatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/RemoveAllIndividualObservationBatchAction.java index a227fcc..ffff287 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveAllIndividualObservationBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/RemoveAllIndividualObservationBatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.actions; /* * #%L @@ -27,6 +27,7 @@ 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.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchRowModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchTableModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchUI; @@ -49,7 +50,7 @@ import static org.nuiton.i18n.I18n.t; * @since 2.7 */ public class RemoveAllIndividualObservationBatchAction - extends AbstractTuttiAction<IndividualObservationBatchUIModel, IndividualObservationBatchUI, IndividualObservationBatchUIHandler> { + extends LongActionSupport<IndividualObservationBatchUIModel, IndividualObservationBatchUI, IndividualObservationBatchUIHandler> { private static final Log log = LogFactory.getLog(RemoveAllIndividualObservationBatchAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveIndividualObservationBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/RemoveIndividualObservationBatchAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveIndividualObservationBatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/RemoveIndividualObservationBatchAction.java index 7430e39..2ebf858 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveIndividualObservationBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/RemoveIndividualObservationBatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.TuttiPersistence; import fr.ifremer.tutti.persistence.entities.TuttiEntities; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchRowModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchTableModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchUI; @@ -44,7 +45,7 @@ import static org.nuiton.i18n.I18n.t; * @since 1.4 */ public class RemoveIndividualObservationBatchAction - extends AbstractTuttiAction<IndividualObservationBatchUIModel, IndividualObservationBatchUI, IndividualObservationBatchUIHandler> { + extends LongActionSupport<IndividualObservationBatchUIModel, IndividualObservationBatchUI, IndividualObservationBatchUIHandler> { private static final Log log = LogFactory.getLog(RemoveIndividualObservationBatchAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectSpeciesForIndividualObservationBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/SelectSpeciesForIndividualObservationBatchAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectSpeciesForIndividualObservationBatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/SelectSpeciesForIndividualObservationBatchAction.java index f692047..08f6bfe 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectSpeciesForIndividualObservationBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/SelectSpeciesForIndividualObservationBatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.collect.Lists; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.persistence.entities.referential.Speciess; import fr.ifremer.tutti.service.DecoratorService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.CreateIndividualObservationBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.CreateIndividualObservationBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.CreateIndividualObservationBatchUIModel; @@ -41,7 +42,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <kmorin@codelutin.com> * @since 2.0 */ -public class SelectSpeciesForIndividualObservationBatchAction extends AbstractTuttiAction<CreateIndividualObservationBatchUIModel, +public class SelectSpeciesForIndividualObservationBatchAction extends LongActionSupport<CreateIndividualObservationBatchUIModel, CreateIndividualObservationBatchUI, CreateIndividualObservationBatchUIHandler> { diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUI.css index 2da9999..91743a9 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUI.css @@ -102,7 +102,7 @@ NumberEditor { text: "tutti.createIndividualObservationBatch.action.addSpecies"; toolTipText: "tutti.createIndividualObservationBatch.action.addSpecies.tip"; i18nMnemonic: "tutti.createIndividualObservationBatch.action.addSpecies.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SelectSpeciesForIndividualObservationBatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.actions.SelectSpeciesForIndividualObservationBatchAction.class}; _help: {"tutti.createIndividualObservationBatch.action.addSpecies.help"}; } @@ -112,6 +112,7 @@ NumberEditor { toolTipText: "tutti.createIndividualObservationBatch.action.saveAndContinue.tip"; i18nMnemonic: "tutti.createIndividualObservationBatch.action.saveAndContinue.mnemonic"; enabled: {model.isValid()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.actions.CreateIndividualObservationBatchAndContinueAction.class}; _help: {"tutti.createIndividualObservationBatch.action.saveAndContinue.help"}; } @@ -121,6 +122,7 @@ NumberEditor { toolTipText: "tutti.createIndividualObservationBatch.action.saveAndClose.tip"; i18nMnemonic: "tutti.createIndividualObservationBatch.action.saveAndClose.mnemonic"; enabled: {model.isValid()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.actions.CreateIndividualObservationBatchAndCloseAction.class}; _help: {"tutti.createIndividualObservationBatch.action.saveAndClose.help"}; } @@ -129,5 +131,6 @@ NumberEditor { text: "tutti.createIndividualObservationBatch.action.cancel"; toolTipText: "tutti.createIndividualObservationBatch.action.cancel.tip"; i18nMnemonic: "tutti.createIndividualObservationBatch.action.cancel.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.actions.CreateIndividualObservationBatchCancelAction.class}; _help: {"tutti.createIndividualObservationBatch.action.cancel.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUI.jaxx index a92d369..d5038ee 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUI.jaxx @@ -128,8 +128,8 @@ public CreateIndividualObservationBatchUI(EditCatchesUI parentUI) { <!-- Form Actions --> <JPanel layout='{new GridLayout(1, 0)}' constraints='BorderLayout.SOUTH'> - <JButton id='cancelButton' onActionPerformed='handler.cancel()'/> - <JButton id='saveAndContinueButton' onActionPerformed='handler.saveAndContinue()'/> - <JButton id='saveAndCloseButton' onActionPerformed='handler.saveAndClose()'/> + <JButton id='cancelButton'/> + <JButton id='saveAndContinueButton'/> + <JButton id='saveAndCloseButton'/> </JPanel> </JPanel> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUIHandler.java index 8a03c1b..4001291 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUIHandler.java @@ -36,7 +36,6 @@ import fr.ifremer.tutti.service.DecoratorService; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchRowModel; -import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchUIModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUIModel; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; @@ -50,7 +49,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.nuiton.decorator.Decorator; import org.nuiton.jaxx.application.bean.JavaBeanObjectUtil; -import org.nuiton.jaxx.application.swing.util.Cancelable; import org.nuiton.jaxx.widgets.number.NumberEditor; import javax.swing.JComponent; @@ -70,8 +68,7 @@ import java.util.Set; * @author kmorin <kmorin@codelutin.com> * @since 1.4 */ -public class CreateIndividualObservationBatchUIHandler extends AbstractTuttiUIHandler<CreateIndividualObservationBatchUIModel, CreateIndividualObservationBatchUI> - implements Cancelable { +public class CreateIndividualObservationBatchUIHandler extends AbstractTuttiUIHandler<CreateIndividualObservationBatchUIModel, CreateIndividualObservationBatchUI> { private static final Log log = LogFactory.getLog(CreateIndividualObservationBatchUIHandler.class); @@ -347,18 +344,6 @@ public class CreateIndividualObservationBatchUIHandler extends AbstractTuttiUIHa } //------------------------------------------------------------------------// - //-- Cancelable methods --// - //------------------------------------------------------------------------// - - @Override - public void cancel() { - if (log.isDebugEnabled()) { - log.debug("Cancel UI " + ui); - } - closeUI(ui); - } - - //------------------------------------------------------------------------// //-- Public methods --// //------------------------------------------------------------------------// @@ -450,34 +435,4 @@ public class CreateIndividualObservationBatchUIHandler extends AbstractTuttiUIHa model.setLengthStepCaracteristic(batchModel.getLastLengthStepCaracteristicUsed()); } - public void saveAndContinue() { - - if (log.isDebugEnabled()) { - log.debug("Save And Continue UI " + ui); - } - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - IndividualObservationBatchUI individualObservationTabContent = parent.getIndividualObservationTabContent(); - individualObservationTabContent.getHandler().addBatch(getModel()); - - // re-open dialog - openUI(individualObservationTabContent.getModel()); - - // set focus to weight field - ui.getIndividualObservationWeightField().grabFocus(); - } - - public void saveAndClose() { - - if (log.isDebugEnabled()) { - log.debug("Save And Close UI " + ui); - } - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - parent.getIndividualObservationTabContent().getHandler().addBatch(getModel()); - - // close dialog - closeUI(ui); - } - } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/actions/CreateIndividualObservationBatchAndCloseAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/actions/CreateIndividualObservationBatchAndCloseAction.java new file mode 100644 index 0000000..bbc3374 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/actions/CreateIndividualObservationBatchAndCloseAction.java @@ -0,0 +1,40 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.CreateIndividualObservationBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CreateIndividualObservationBatchAndCloseAction extends SimpleActionSupport<CreateIndividualObservationBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CreateIndividualObservationBatchAndCloseAction.class); + + private static final long serialVersionUID = 1L; + + public CreateIndividualObservationBatchAndCloseAction(CreateIndividualObservationBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CreateIndividualObservationBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Save And Close UI " + ui); + } + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + parent.getIndividualObservationTabContent().getHandler().addBatch(ui.getModel()); + + // close dialog + ui.getHandler().onCloseUI(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/actions/CreateIndividualObservationBatchAndContinueAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/actions/CreateIndividualObservationBatchAndContinueAction.java new file mode 100644 index 0000000..13b3f16 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/actions/CreateIndividualObservationBatchAndContinueAction.java @@ -0,0 +1,49 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.CreateIndividualObservationBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CreateIndividualObservationBatchAndContinueAction extends SimpleActionSupport<CreateIndividualObservationBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CreateIndividualObservationBatchAndContinueAction.class); + + private static final long serialVersionUID = 1L; + + public CreateIndividualObservationBatchAndContinueAction(CreateIndividualObservationBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CreateIndividualObservationBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Save And Close UI " + ui); + } + + if (log.isDebugEnabled()) { + log.debug("Save And Continue UI " + ui); + } + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + IndividualObservationBatchUI individualObservationTabContent = parent.getIndividualObservationTabContent(); + individualObservationTabContent.getHandler().addBatch(ui.getModel()); + + // re-open dialog + ui.getHandler().openUI(individualObservationTabContent.getModel()); + + // set focus to weight field + ui.getIndividualObservationWeightField().grabFocus(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/actions/CreateIndividualObservationBatchCancelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/actions/CreateIndividualObservationBatchCancelAction.java new file mode 100644 index 0000000..eecb61a --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/actions/CreateIndividualObservationBatchCancelAction.java @@ -0,0 +1,35 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.CreateIndividualObservationBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CreateIndividualObservationBatchCancelAction extends SimpleActionSupport<CreateIndividualObservationBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CreateIndividualObservationBatchCancelAction.class); + + private static final long serialVersionUID = 1L; + + public CreateIndividualObservationBatchCancelAction(CreateIndividualObservationBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CreateIndividualObservationBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Save And Close UI " + ui); + } + + ui.getHandler().onCloseUI(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUI.css index ee18641..969f871 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUI.css @@ -84,7 +84,7 @@ ComputableDataEditor { text: "tutti.editMarineLitterBatch.action.importMultiPost"; toolTipText: "tutti.editMarineLitterBatch.action.importMultiPost.tip"; i18nMnemonic: "tutti.editMarineLitterBatch.action.importMultiPost.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportMultiPostMarineLitterAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.actions.ImportMultiPostMarineLitterAction.class}; _help: {"tutti.editMarineLitterBatch.action.importMultiPost.help"}; } @@ -93,7 +93,7 @@ ComputableDataEditor { text: "tutti.editMarineLitterBatch.action.exportMultiPost"; toolTipText: "tutti.editMarineLitterBatch.action.exportMultiPost.tip"; i18nMnemonic: "tutti.editMarineLitterBatch.action.exportMultiPost.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportMultiPostMarineLitterAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.actions.ExportMultiPostMarineLitterAction.class}; _help: {"tutti.editMarineLitterBatch.action.exportMultiPost.help"}; } @@ -102,6 +102,7 @@ ComputableDataEditor { text: "tutti.editMarineLitterBatch.action.createBatch"; toolTipText: "tutti.editMarineLitterBatch.action.createBatch.tip"; i18nMnemonic: "tutti.editMarineLitterBatch.action.createBatch.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.actions.OpenCreateMarineLitterBatchUIAction.class}; _help: {"tutti.editMarineLitterBatch.action.createBatch.help"}; } @@ -110,7 +111,7 @@ ComputableDataEditor { text: "tutti.editMarineLitterBatch.action.removeBatch"; toolTipText: "tutti.editMarineLitterBatch.action.removeBatch.tip"; i18nMnemonic: "tutti.editMarineLitterBatch.action.removeBatch.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.RemoveMarineLitterBatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.actions.RemoveMarineLitterBatchAction.class}; enabled: {model.isRemoveBatchEnabled()}; _help: {"tutti.editMarineLitterBatch.action.removeBatch.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUI.jaxx index 64775cb..29ae951 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUI.jaxx @@ -95,8 +95,7 @@ public MarineLitterBatchUI(TuttiUI<?,?> parentUI) { <JPanel id='tableToolbar' layout='{new BorderLayout()}'> <JPanel layout='{new GridLayout(1,0)}' constraints='BorderLayout.WEST'> - <JButton id='createMarineLitterBatchButton' - onActionPerformed='handler.createBatch()'/> + <JButton id='createMarineLitterBatchButton'/> </JPanel> </JPanel> </cell> @@ -109,9 +108,4 @@ public MarineLitterBatchUI(TuttiUI<?,?> parentUI) { onKeyPressed='handler.openRowMenu(event, tablePopup)'/> </JScrollPane> - <!--JPanel constraints='BorderLayout.SOUTH' - minimumSize="{new Dimension(10,30)}" - maximumSize="{new Dimension(10,30)}" - preferredSize="{new Dimension(10,30)}"/--> - </JPanel> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUIHandler.java index 4bd5c3b..9ef577f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUIHandler.java @@ -32,10 +32,7 @@ import fr.ifremer.tutti.persistence.entities.data.MarineLitterBatch; import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; import fr.ifremer.tutti.type.WeightUnit; import fr.ifremer.tutti.ui.swing.content.operation.catches.AbstractTuttiBatchTableUIHandler; -import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; -import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; -import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.create.CreateMarineLitterBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.create.CreateMarineLitterBatchUIModel; import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor; import fr.ifremer.tutti.ui.swing.util.TuttiUI; @@ -335,15 +332,6 @@ public class MarineLitterBatchUIHandler extends AbstractTuttiBatchTableUIHandler //-- Public methods --// //------------------------------------------------------------------------// - public void createBatch() { - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - CreateMarineLitterBatchUI createBatchEditor = parent.getMarineLitterTabCreateBatch(); - - createBatchEditor.getHandler().openUI(getModel()); - parent.getHandler().setMarineLitterSelectedCard(EditCatchesUIHandler.CREATE_BATCH_CARD); - } - public void addBatch(CreateMarineLitterBatchUIModel model) { if (model.isValid()) { diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostMarineLitterAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/ExportMultiPostMarineLitterAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostMarineLitterAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/ExportMultiPostMarineLitterAction.java index 7759be9..ee0e8fd 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostMarineLitterAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/ExportMultiPostMarineLitterAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.catches.multipost.MultiPostExportService; +import fr.ifremer.tutti.ui.swing.content.operation.catches.actions.ExportMultiPostActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchUIModel; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostMarineLitterAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/ImportMultiPostMarineLitterAction.java similarity index 95% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostMarineLitterAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/ImportMultiPostMarineLitterAction.java index 32f0c3e..b65a39a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostMarineLitterAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/ImportMultiPostMarineLitterAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.actions; /* * #%L @@ -27,6 +27,7 @@ import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.persistence.entities.data.MarineLitterBatch; import fr.ifremer.tutti.service.catches.multipost.MultiPostImportService; import fr.ifremer.tutti.type.WeightUnit; +import fr.ifremer.tutti.ui.swing.content.operation.catches.actions.ImportMultiPostActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchUIModel; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/OpenCreateMarineLitterBatchUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/OpenCreateMarineLitterBatchUIAction.java new file mode 100644 index 0000000..88604a5 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/OpenCreateMarineLitterBatchUIAction.java @@ -0,0 +1,38 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; +import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.create.CreateMarineLitterBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class OpenCreateMarineLitterBatchUIAction extends SimpleActionSupport<MarineLitterBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(OpenCreateMarineLitterBatchUIAction.class); + + private static final long serialVersionUID = 1L; + + public OpenCreateMarineLitterBatchUIAction(MarineLitterBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(MarineLitterBatchUI ui) { + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + CreateMarineLitterBatchUI createBatchEditor = parent.getMarineLitterTabCreateBatch(); + + createBatchEditor.getHandler().openUI(ui.getModel()); + parent.getHandler().setMarineLitterSelectedCard(EditCatchesUIHandler.CREATE_BATCH_CARD); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveMarineLitterBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/RemoveMarineLitterBatchAction.java similarity index 91% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveMarineLitterBatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/RemoveMarineLitterBatchAction.java index dd9f17f..d67302e 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveMarineLitterBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/RemoveMarineLitterBatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.actions; /* * #%L @@ -25,11 +25,13 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.TuttiPersistence; import fr.ifremer.tutti.persistence.entities.TuttiEntities; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchRowModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchTableModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchUIModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions.RemoveSpeciesSubBatchAction; import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -45,7 +47,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.3 */ -public class RemoveMarineLitterBatchAction extends AbstractTuttiAction<MarineLitterBatchUIModel, MarineLitterBatchUI, MarineLitterBatchUIHandler> { +public class RemoveMarineLitterBatchAction extends LongActionSupport<MarineLitterBatchUIModel, MarineLitterBatchUI, MarineLitterBatchUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUI.css index d7bca8e..f384bcb 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUI.css @@ -97,6 +97,7 @@ NumberEditor { toolTipText: "tutti.createMarineLitterBatch.action.saveAndContinue.tip"; i18nMnemonic: "tutti.createMarineLitterBatch.action.saveAndContinue.mnemonic"; enabled: {model.isValid()}; + _simpleAction:{fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.create.actions.CreateMarineLitterBatchBatchAndContinueAction.class}; _help: {"tutti.createMarineLitterBatch.action.saveAndContinue.help"}; } @@ -106,6 +107,7 @@ NumberEditor { toolTipText: "tutti.createMarineLitterBatch.action.saveAndClose.tip"; i18nMnemonic: "tutti.createMarineLitterBatch.action.saveAndClose.mnemonic"; enabled: {model.isValid()}; + _simpleAction:{fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.create.actions.CreateMarineLitterBatchBatchAndCloseAction.class}; _help: {"tutti.createMarineLitterBatch.action.saveAndClose.help"}; } @@ -114,5 +116,6 @@ NumberEditor { text: "tutti.createMarineLitterBatch.action.cancel"; toolTipText: "tutti.createMarineLitterBatch.action.cancel.tip"; i18nMnemonic: "tutti.createMarineLitterBatch.action.cancel.mnemonic"; + _simpleAction:{fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.create.actions.CreateMarineLitterBatchBatchCancelAction.class}; _help: {"tutti.createMarineLitterBatch.action.cancel.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUI.jaxx index c1220d9..36a7f95 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUI.jaxx @@ -109,8 +109,8 @@ public CreateMarineLitterBatchUI(EditCatchesUI parentUI) { <!-- Form Actions --> <JPanel layout='{new GridLayout(1, 0)}' constraints='BorderLayout.SOUTH'> - <JButton id='cancelButton' onActionPerformed='handler.cancel()'/> - <JButton id='saveAndContinueButton' onActionPerformed='handler.saveAndContinue()'/> - <JButton id='saveAndCloseButton' onActionPerformed='handler.saveAndClose()'/> + <JButton id='cancelButton'/> + <JButton id='saveAndContinueButton'/> + <JButton id='saveAndCloseButton'/> </JPanel> </JPanel> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUIHandler.java index 84631e8..02b96b1 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUIHandler.java @@ -28,13 +28,11 @@ import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; -import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchUIModel; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; import jaxx.runtime.validator.swing.SwingValidator; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.jaxx.application.swing.util.Cancelable; import javax.swing.JComponent; @@ -42,7 +40,7 @@ import javax.swing.JComponent; * @author tchemit <chemit@codelutin.com> * @since 1.3 */ -public class CreateMarineLitterBatchUIHandler extends AbstractTuttiUIHandler<CreateMarineLitterBatchUIModel, CreateMarineLitterBatchUI> implements Cancelable { +public class CreateMarineLitterBatchUIHandler extends AbstractTuttiUIHandler<CreateMarineLitterBatchUIModel, CreateMarineLitterBatchUI> { /** Logger. */ private static final Log log = @@ -109,18 +107,6 @@ public class CreateMarineLitterBatchUIHandler extends AbstractTuttiUIHandler<Cre } //------------------------------------------------------------------------// - //-- Cancelable methods --// - //------------------------------------------------------------------------// - - @Override - public void cancel() { - if (log.isDebugEnabled()) { - log.debug("Cancel UI " + ui); - } - closeUI(ui); - } - - //------------------------------------------------------------------------// //-- Public methods --// //------------------------------------------------------------------------// @@ -143,31 +129,4 @@ public class CreateMarineLitterBatchUIHandler extends AbstractTuttiUIHandler<Cre } - public void saveAndContinue() { - - if (log.isDebugEnabled()) { - log.debug("Save And Continue UI " + ui); - } - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - MarineLitterBatchUI marineLitterTabContent = parent.getMarineLitterTabContent(); - marineLitterTabContent.getHandler().addBatch(getModel()); - - // reopen this ui - openUI(marineLitterTabContent.getModel()); - } - - public void saveAndClose() { - - if (log.isDebugEnabled()) { - log.debug("Save And Close UI " + ui); - } - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - parent.getMarineLitterTabContent().getHandler().addBatch(getModel()); - - // close dialog - closeUI(ui); - } - } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/actions/CreateMarineLitterBatchBatchAndCloseAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/actions/CreateMarineLitterBatchBatchAndCloseAction.java new file mode 100644 index 0000000..95c6af2 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/actions/CreateMarineLitterBatchBatchAndCloseAction.java @@ -0,0 +1,40 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.create.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.create.CreateMarineLitterBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CreateMarineLitterBatchBatchAndCloseAction extends SimpleActionSupport<CreateMarineLitterBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CreateMarineLitterBatchBatchAndCloseAction.class); + + private static final long serialVersionUID = 1L; + + public CreateMarineLitterBatchBatchAndCloseAction(CreateMarineLitterBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CreateMarineLitterBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Save And Close UI " + ui); + } + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + parent.getMarineLitterTabContent().getHandler().addBatch(ui.getModel()); + + // close dialog + ui.getHandler().onCloseUI(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/actions/CreateMarineLitterBatchBatchAndContinueAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/actions/CreateMarineLitterBatchBatchAndContinueAction.java new file mode 100644 index 0000000..0fe6cf2 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/actions/CreateMarineLitterBatchBatchAndContinueAction.java @@ -0,0 +1,46 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.create.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.create.CreateMarineLitterBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CreateMarineLitterBatchBatchAndContinueAction extends SimpleActionSupport<CreateMarineLitterBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CreateMarineLitterBatchBatchAndContinueAction.class); + + private static final long serialVersionUID = 1L; + + public CreateMarineLitterBatchBatchAndContinueAction(CreateMarineLitterBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CreateMarineLitterBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Save And Close UI " + ui); + } + + if (log.isDebugEnabled()) { + log.debug("Save And Continue UI " + ui); + } + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + MarineLitterBatchUI marineLitterTabContent = parent.getMarineLitterTabContent(); + marineLitterTabContent.getHandler().addBatch(ui.getModel()); + + // reopen this ui + ui.getHandler().openUI(marineLitterTabContent.getModel()); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/actions/CreateMarineLitterBatchBatchCancelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/actions/CreateMarineLitterBatchBatchCancelAction.java new file mode 100644 index 0000000..ad26679 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/actions/CreateMarineLitterBatchBatchCancelAction.java @@ -0,0 +1,36 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.create.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.create.CreateMarineLitterBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CreateMarineLitterBatchBatchCancelAction extends SimpleActionSupport<CreateMarineLitterBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CreateMarineLitterBatchBatchCancelAction.class); + + private static final long serialVersionUID = 1L; + + public CreateMarineLitterBatchBatchCancelAction(CreateMarineLitterBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CreateMarineLitterBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Save And Close UI " + ui); + } + + // close dialog + ui.getHandler().onCloseUI(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.css index 8c38d3c..d62bc13 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.css @@ -188,6 +188,7 @@ ComputableDataEditor { toolTipText: "tutti.editSpeciesBatch.action.splitBatch.tip"; i18nMnemonic: "tutti.editSpeciesBatch.action.splitBatch.mnemonic"; enabled: {model.isTableViewModeAll() && model.isSplitBatchEnabled()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions.OpenSplitSpeciesBatchUIAction.class}; _help: {"tutti.editSpeciesBatch.action.splitBatch.help"}; } @@ -197,6 +198,7 @@ ComputableDataEditor { toolTipText: "tutti.editSpeciesBatch.action.changeSampleCategory.tip"; i18nMnemonic: "tutti.editSpeciesBatch.action.changeSampleCategory.mnemonic"; enabled: {model.isTableViewModeAll() && model.isChangeSampleCategoryEnabled()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions.ChangeSpeciesBatchSampleCategoryAction.class}; _help: {"tutti.editSpeciesBatch.action.changeSampleCategory.help"}; } @@ -206,6 +208,7 @@ ComputableDataEditor { toolTipText: "tutti.editSpeciesBatch.action.addSampleCategory.tip"; i18nMnemonic: "tutti.editSpeciesBatch.action.addSampleCategory.mnemonic"; enabled: {model.isTableViewModeAll() && model.isAddSampleCategoryEnabled()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions.OpenAddSpeciesBatchSampleCategoryUIAction.class}; _help: {"tutti.editSpeciesBatch.action.addSampleCategory.help"}; } @@ -214,7 +217,7 @@ ComputableDataEditor { text: "tutti.editSpeciesBatch.action.removeBatch"; toolTipText: "tutti.editSpeciesBatch.action.removeBatch.tip"; i18nMnemonic: "tutti.editSpeciesBatch.action.removeBatch.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.RemoveSpeciesBatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions.RemoveSpeciesBatchAction.class}; enabled: {model.isTableViewModeAll() && model.isRemoveBatchEnabled()}; _help: {"tutti.editSpeciesBatch.action.removeBatch.help"}; } @@ -224,7 +227,7 @@ ComputableDataEditor { text: "tutti.editSpeciesBatch.action.removeSubBatch"; toolTipText: "tutti.editSpeciesBatch.action.removeSubBatch.tip"; i18nMnemonic: "tutti.editSpeciesBatch.action.removeSubBatch.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.RemoveSpeciesSubBatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions.RemoveSpeciesSubBatchAction.class}; enabled: {model.isTableViewModeAll() && model.isRemoveSubBatchEnabled()}; _help: {"tutti.editSpeciesBatch.action.removeSubBatch.help"}; } @@ -234,7 +237,7 @@ ComputableDataEditor { text: "tutti.editSpeciesBatch.action.renameBatch"; toolTipText: "tutti.editSpeciesBatch.action.renameBatch.tip"; i18nMnemonic: "tutti.editSpeciesBatch.action.renameBatch.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.RenameSpeciesBatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions.RenameSpeciesBatchAction.class}; enabled: {model.isTableViewModeAll() && model.isRenameBatchEnabled()}; _help: {"tutti.editSpeciesBatch.action.renameBatch.help"}; } @@ -244,7 +247,7 @@ ComputableDataEditor { text: "tutti.editSpeciesBatch.action.createMelag"; toolTipText: "tutti.editSpeciesBatch.action.createMelag.tip"; i18nMnemonic: "tutti.editSpeciesBatch.action.createMelag.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.CreateSpeciesMelagAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions.CreateSpeciesMelagAction.class}; enabled: {!model.isTableViewModeLeaf() && model.isCreateMelagEnabled()}; _help: {"tutti.editSpeciesBatch.action.createMelag.help"}; } @@ -255,6 +258,7 @@ ComputableDataEditor { toolTipText: "tutti.editSpeciesBatch.action.editFrequencies.tip"; i18nMnemonic: "tutti.editSpeciesBatch.action.editFrequencies.mnemonic"; enabled: {model.isTableViewModeAll() && model.isEditFrequenciesEnabled()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions.OpenEditSpeciesBatchFrequencyUIAction.class}; _help: {"tutti.editSpeciesBatch.action.editFrequencies.help"}; } @@ -263,7 +267,7 @@ ComputableDataEditor { text: "tutti.editSpeciesBatch.action.importPupitri"; toolTipText: "tutti.editSpeciesBatch.action.importPupitri.tip"; i18nMnemonic: "tutti.editSpeciesBatch.action.importPupitri.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportPupitriAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions.ImportPupitriAction.class}; _help: {"tutti.editSpeciesBatch.action.importPupitri.help"}; } @@ -272,7 +276,7 @@ ComputableDataEditor { text: "tutti.editSpeciesBatch.action.importPsion"; toolTipText: "tutti.editSpeciesBatch.action.importPsion.tip"; i18nMnemonic: "tutti.editSpeciesBatch.action.importPsion.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportPsionAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions.ImportPsionAction.class}; _help: {"tutti.editSpeciesBatch.action.importPsion.help"}; } @@ -281,7 +285,7 @@ ComputableDataEditor { text: "tutti.editSpeciesBatch.action.importBigfin"; toolTipText: "tutti.editSpeciesBatch.action.importBigfin.tip"; i18nMnemonic: "tutti.editSpeciesBatch.action.importBigfin.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportBigfinAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions.ImportBigfinAction.class}; _help: {"tutti.editSpeciesBatch.action.importBigfin.help"}; } @@ -290,7 +294,7 @@ ComputableDataEditor { text: "tutti.editSpeciesBatch.action.importMultiPost"; toolTipText: "tutti.editSpeciesBatch.action.importMultiPost.tip"; i18nMnemonic: "tutti.editSpeciesBatch.action.importMultiPost.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportMultiPostSpeciesAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions.ImportMultiPostSpeciesAction.class}; _help: {"tutti.editSpeciesBatch.action.importMultiPost.help"}; } @@ -299,7 +303,7 @@ ComputableDataEditor { text: "tutti.editSpeciesBatch.action.exportMultiPost"; toolTipText: "tutti.editSpeciesBatch.action.exportMultiPost.tip"; i18nMnemonic: "tutti.editSpeciesBatch.action.exportMultiPost.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportMultiPostSpeciesAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions.ExportMultiPostSpeciesAction.class}; _help: {"tutti.editSpeciesBatch.action.exportMultiPost.help"}; } @@ -332,6 +336,7 @@ ComputableDataEditor { text: "tutti.editSpeciesBatch.action.createBatch"; toolTipText: "tutti.editSpeciesBatch.action.createBatch.tip"; i18nMnemonic: "tutti.editSpeciesBatch.action.createBatch.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions.OpenCreateSpeciesBatchUIAction.class}; _help: {"tutti.editSpeciesBatch.action.createBatch.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.jaxx index facab39..765592a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.jaxx @@ -74,18 +74,14 @@ public SpeciesBatchUI(TuttiUI<?,?> parentUI) { </JToolBar> <JPopupMenu id='tablePopup'> - <JMenuItem id='splitSpeciesBatchMenu' - onActionPerformed='handler.splitBatch()'/> - <JMenuItem id='changeSampleCategoryMenu' - onActionPerformed='handler.changeBatchCategory()'/> - <JMenuItem id='addSampleCategoryMenu' - onActionPerformed='handler.addBatchCategory()'/> + <JMenuItem id='splitSpeciesBatchMenu'/> + <JMenuItem id='changeSampleCategoryMenu'/> + <JMenuItem id='addSampleCategoryMenu'/> <JMenuItem id='removeSpeciesBatchMenu'/> <JMenuItem id='removeSpeciesSubBatchMenu'/> <JMenuItem id='renameSpeciesBatchMenu'/> <JMenuItem id='createSpeciesMelagMenu'/> - <JMenuItem id='editFrequenciesMenu' - onActionPerformed='handler.editFrequencies()'/> + <JMenuItem id='editFrequenciesMenu'/> </JPopupMenu> <Table id='form' fill='both' constraints='BorderLayout.NORTH'> @@ -147,8 +143,7 @@ public SpeciesBatchUI(TuttiUI<?,?> parentUI) { <JPanel id='tableToolbar' layout='{new BorderLayout()}'> <JPanel layout='{new GridLayout(1,0)}' constraints='BorderLayout.WEST'> - <JButton id='createSpeciesBatchButton' - onActionPerformed='handler.createBatch()'/> + <JButton id='createSpeciesBatchButton'/> </JPanel> <JPanel constraints='BorderLayout.CENTER' layout='{new GridLayout()}'> <JPanel id='filterTablePane'> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUIHandler.java index 97cc68c..3a52a5f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUIHandler.java @@ -35,16 +35,12 @@ import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel; import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModelEntry; import fr.ifremer.tutti.persistence.entities.data.SpeciesBatch; import fr.ifremer.tutti.persistence.entities.data.SpeciesBatchFrequency; -import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValues; import fr.ifremer.tutti.persistence.entities.referential.Species; -import fr.ifremer.tutti.service.DecoratorService; import fr.ifremer.tutti.service.ValidationService; import fr.ifremer.tutti.type.WeightUnit; import fr.ifremer.tutti.ui.swing.content.operation.catches.AbstractTuttiBatchTableUIHandler; -import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; -import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.SampleCategoryColumnIdentifier; import fr.ifremer.tutti.ui.swing.content.operation.catches.SampleCategoryComponent; @@ -53,12 +49,10 @@ import fr.ifremer.tutti.ui.swing.content.operation.catches.SpeciesBatchDecorator import fr.ifremer.tutti.ui.swing.content.operation.catches.SpeciesBatchDecoratorComparator; import fr.ifremer.tutti.ui.swing.content.operation.catches.SpeciesSortMode; import fr.ifremer.tutti.ui.swing.content.operation.catches.TableViewMode; -import fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.CreateSpeciesBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.CreateSpeciesBatchUIModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.frequency.SpeciesFrequencyCellComponent; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.frequency.SpeciesFrequencyRowModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.split.SplitSpeciesBatchRowModel; -import fr.ifremer.tutti.ui.swing.content.operation.catches.species.split.SplitSpeciesBatchUI; import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor; import fr.ifremer.tutti.ui.swing.util.TuttiUI; import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; @@ -69,7 +63,7 @@ import fr.ifremer.tutti.ui.swing.util.comment.CommentCellRenderer; import fr.ifremer.tutti.ui.swing.util.computable.ComputableDataTableCell; import fr.ifremer.tutti.util.Weights; import jaxx.runtime.SwingUtil; -import jaxx.runtime.swing.renderer.DecoratorListCellRenderer; +import jaxx.runtime.swing.JTables; import jaxx.runtime.validator.swing.SwingValidator; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.ObjectUtils; @@ -84,12 +78,9 @@ import org.jdesktop.swingx.table.TableColumnExt; import org.jdesktop.swingx.table.TableColumnModelExt; import org.nuiton.decorator.Decorator; import org.nuiton.jaxx.application.swing.table.ColumnIdentifier; -import org.nuiton.jaxx.widgets.number.NumberEditor; import org.nuiton.validator.NuitonValidatorResult; -import javax.swing.JComboBox; import javax.swing.JComponent; -import javax.swing.JOptionPane; import javax.swing.RowFilter; import javax.swing.event.TableModelEvent; import javax.swing.event.TableModelListener; @@ -919,13 +910,12 @@ public class SpeciesBatchUIHandler extends AbstractTuttiBatchTableUIHandler<Spec //-- Public methods --// //------------------------------------------------------------------------// - public void createBatch() { - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - CreateSpeciesBatchUI createBatchEditor = parent.getSpeciesTabCreateBatch(); + public SampleCategoryModel getSampleCategoryModel() { + return sampleCategoryModel; + } - createBatchEditor.getHandler().openUI(getModel()); - parent.getHandler().setSpeciesSelectedCard(EditCatchesUIHandler.CREATE_BATCH_CARD); + public Integer getQualitative_unsorted_id() { + return qualitative_unsorted_id; } public void addBatch(CreateSpeciesBatchUIModel batchRootRowModel) { @@ -957,7 +947,7 @@ public class SpeciesBatchUIHandler extends AbstractTuttiBatchTableUIHandler<Spec log.debug("Will insert at index: " + insertIndex); } tableModel.addNewRow(insertIndex, newRow); - TuttiUIUtil.doSelectCell(getTable(), insertIndex, 0); + JTables.doSelectCell(getTable(), insertIndex, 0); // update speciesUsed addToSpeciesUsed(newRow); @@ -974,240 +964,6 @@ public class SpeciesBatchUIHandler extends AbstractTuttiBatchTableUIHandler<Spec } } - public void editFrequencies() { - - JXTable table = getTable(); - - int rowIndex = SwingUtil.getSelectedModelRow(table); - - TableColumnModelExt columnModel = (TableColumnModelExt) getTable().getColumnModel(); - - int columnIndex = columnModel.getColumnIndex(SpeciesBatchTableModel.COMPUTED_NUMBER); - - TuttiUIUtil.doSelectCell(getTable(), rowIndex, columnIndex); - - SpeciesFrequencyCellComponent.FrequencyCellEditor cellEditor = - (SpeciesFrequencyCellComponent.FrequencyCellEditor) - columnModel.getColumnExt(columnIndex).getCellEditor(); - cellEditor.startEdit(); - } - - public void splitBatch() { - - JXTable table = getTable(); - - // get selected row - int rowIndex = SwingUtil.getSelectedModelRow(table); - - Preconditions.checkState(rowIndex != -1, - "Cant split batch if no batch selected"); - - SpeciesBatchTableModel tableModel = getTableModel(); - - SpeciesBatchRowModel parentBatch = tableModel.getEntry(rowIndex); - - boolean split = true; - if (parentBatch.getWeight() != null) { - String htmlMessage = String.format( - CONFIRMATION_FORMAT, - t("tutti.editSpeciesBatch.split.weightNotNull.message"), - t("tutti.editSpeciesBatch.split.weightNotNull.help")); - int i = JOptionPane.showConfirmDialog( - getTopestUI(), - htmlMessage, - t("tutti.editSpeciesBatch.split.weightNotNull.title"), - JOptionPane.OK_CANCEL_OPTION); - - if (i == JOptionPane.OK_OPTION) { - parentBatch.setWeight(null); - - } else { - split = false; - } - } - - if (split) { - if (log.isDebugEnabled()) { - log.debug("Open split batch ui for row [" + rowIndex + ']'); - } - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - SplitSpeciesBatchUI splitBatchEditor = parent.getSpeciesTabSplitBatch(); - - parent.getHandler().splitSpeciesBatch(parentBatch, splitBatchEditor); - } - } - - public void addBatchCategory() { - - // get table model - SpeciesBatchTableModel tableModel = getTableModel(); - - // get selected row - int rowIndex = SwingUtil.getSelectedModelRow(getTable()); - Preconditions.checkState(rowIndex != -1, - "Cant split batch if no batch selected"); - - // get selected column - int columnIndex = SwingUtil.getSelectedModelColumn(getTable()); - Preconditions.checkState(columnIndex != -1, - "Cant split batch if no batch selected"); - - // get selected row - SpeciesBatchRowModel selectedRow = tableModel.getEntry(rowIndex); - - // get his sample category - Integer sampleCategoryId = tableModel.getSampleCategoryId(columnIndex); - - // get the first ancestor row using this category - SpeciesBatchRowModel firstAncestorRow = - selectedRow.getFirstAncestor(sampleCategoryId); - - // get his parent (the one we will edit) - SpeciesBatchRowModel parentBatch = firstAncestorRow.getParentBatch(); - - if (log.isDebugEnabled()) { - log.debug("Open addChangeCategory batch ui for row [" + rowIndex + "] and category " + sampleCategoryId); - } - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - SplitSpeciesBatchUI splitBatchEditor = - parent.getSpeciesTabAddSampleCategoryBatch(); - - parent.getHandler().addSampleCategorySpeciesBatch( - parentBatch, - splitBatchEditor, - sampleCategoryId); - } - - public void changeBatchCategory() { - - // get table model - SpeciesBatchTableModel tableModel = getTableModel(); - - // get selected row - int rowIndex = SwingUtil.getSelectedModelRow(getTable()); - - // get selected column - int columnIndex = SwingUtil.getSelectedModelColumn(getTable()); - - // get selected row - SpeciesBatchRowModel selectedRow = tableModel.getEntry(rowIndex); - - // get his sample category - Integer sampleCategoryId = tableModel.getSampleCategoryId(columnIndex); - SampleCategoryModelEntry sampleCategoryEntry = sampleCategoryModel.getCategoryById(sampleCategoryId); - Caracteristic caracteristic = sampleCategoryEntry.getCaracteristic(); - - // get the first ancestor row using this category - SpeciesBatchRowModel firstAncestorRow = - selectedRow.getFirstAncestor(sampleCategoryId); - - // get used values of the category - Set<Serializable> usedValues = getSampleUsedValues(firstAncestorRow, - sampleCategoryId); - - // get the new selected value for this category - Serializable selectedItem; - - String categoryDecorated = decorate(caracteristic, DecoratorService.CARACTERISTIC_PARAMETER_ONLY); - String dialogTitle = t("tutti.editSpeciesBatch.title.changeSampleCategoryValue", categoryDecorated); - - boolean numericType = caracteristic.isNumericType(); - - if (numericType) { - - // open a simple number editor - NumberEditor editor = new NumberEditor(); - editor.setNumberPattern(TuttiUI.DECIMAL3_PATTERN); - editor.setUseSign(false); -// editor.setUseFloat(true); - editor.setShowPopupButton(false); - editor.setShowReset(false); - - int response = JOptionPane.showConfirmDialog( - getUI(), - editor, - dialogTitle, - JOptionPane.OK_CANCEL_OPTION); - - if (response == JOptionPane.OK_OPTION) { - selectedItem = editor.getModel(); - } else { - // user cancel selection - selectedItem = null; - } - - if (usedValues.contains(selectedItem)) { - - // impossible de choisir cette valeur (déjà utilisée) - JOptionPane.showMessageDialog( - getTopestUI(), - t("tutti.editSpeciesBatch.error.sampleCategoryValue.notAvailable", selectedItem, categoryDecorated)); - selectedItem = null; - } - - } else { - - // open a combobox to select new value - - List<CaracteristicQualitativeValue> availableValues = - Lists.newArrayList(caracteristic.getQualitativeValue()); - - boolean firstCategory = - sampleCategoryModel.getFirstCategoryId().equals(sampleCategoryId); - - if (firstCategory) { - - // remove the unsorted qualitative value - CaracteristicQualitativeValues.removeQualitativeValue(availableValues, qualitative_unsorted_id); - } - - availableValues.removeAll(usedValues); - - JComboBox editor = new JComboBox(); - editor.setRenderer(new DecoratorListCellRenderer(getDecorator(CaracteristicQualitativeValue.class, null))); - SwingUtil.fillComboBox(editor, availableValues, availableValues.get(0)); - - int response = JOptionPane.showConfirmDialog( - getTopestUI(), - editor, - dialogTitle, - JOptionPane.OK_CANCEL_OPTION); - - if (response == JOptionPane.OK_OPTION) { - selectedItem = (CaracteristicQualitativeValue) editor.getSelectedItem(); - } else { - // user cancel selection - selectedItem = null; - } - } - - if (log.isDebugEnabled()) { - log.debug("New selected category: " + selectedItem); - } - - if (selectedItem != null) { - - // update rows values - Serializable oldValue = tableModel.updateSampleCategorieValue(firstAncestorRow, - columnIndex, - selectedItem); - - // save the first ancestor row with the modified category value - saveRow(firstAncestorRow); - - if (!numericType) { - - // update speciesUsed cache - EditCatchesUIModel createBatchModel = ui.getParentContainer(EditCatchesUI.class).getModel(); - createBatchModel.replaceCaracteristicValue(firstAncestorRow.getSpecies(), (CaracteristicQualitativeValue) oldValue, (CaracteristicQualitativeValue) selectedItem); - - } - - } - } - public void splitBatch(SampleCategoryModelEntry sampleCategoryDef, List<SplitSpeciesBatchRowModel> rows, Float totalRowWeight) { @@ -1244,7 +1000,7 @@ public class SpeciesBatchUIHandler extends AbstractTuttiBatchTableUIHandler<Spec newBatches.add(newBatch); tableModel.addNewRow(++insertRow, newBatch); - TuttiUIUtil.selectFirstCellOnRow(getTable(), insertRow, false); + JTables.selectFirstCellOnRow(getTable(), insertRow, false); } } @@ -1468,7 +1224,7 @@ public class SpeciesBatchUIHandler extends AbstractTuttiBatchTableUIHandler<Spec //-- Internal methods --// //------------------------------------------------------------------------// - protected void saveRow(SpeciesBatchRowModel row) { + public void saveRow(SpeciesBatchRowModel row) { FishingOperation fishingOperation = getModel().getFishingOperation(); Preconditions.checkNotNull(fishingOperation); @@ -1646,8 +1402,8 @@ public class SpeciesBatchUIHandler extends AbstractTuttiBatchTableUIHandler<Spec * @return all the sample category values (of the given * {@code sampleCategoryId}) for all brothers of the given {@code row}. */ - protected Set<Serializable> getSampleUsedValues(SpeciesBatchRowModel row, - int sampleCategoryId) { + public Set<Serializable> getSampleUsedValues(SpeciesBatchRowModel row, + int sampleCategoryId) { Set<Serializable> usedValues = Sets.newHashSet(); List<SpeciesBatchRowModel> childs; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ChangeSpeciesBatchSampleCategoryAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ChangeSpeciesBatchSampleCategoryAction.java new file mode 100644 index 0000000..5b862ba --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ChangeSpeciesBatchSampleCategoryAction.java @@ -0,0 +1,178 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions; + +import com.google.common.collect.Lists; +import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel; +import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModelEntry; +import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; +import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValues; +import fr.ifremer.tutti.service.DecoratorService; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchRowModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchTableModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUIHandler; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.TuttiUI; +import jaxx.runtime.SwingUtil; +import jaxx.runtime.swing.renderer.DecoratorListCellRenderer; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.nuiton.jaxx.widgets.number.NumberEditor; + +import javax.swing.JComboBox; +import javax.swing.JOptionPane; +import java.io.Serializable; +import java.util.List; +import java.util.Set; + +import static org.nuiton.i18n.I18n.t; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class ChangeSpeciesBatchSampleCategoryAction extends SimpleActionSupport<SpeciesBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(ChangeSpeciesBatchSampleCategoryAction.class); + + private static final long serialVersionUID = -6540241422935319461L; + + public ChangeSpeciesBatchSampleCategoryAction(SpeciesBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(SpeciesBatchUI ui) { + + SpeciesBatchUIHandler handler = ui.getHandler(); + + // get table model + SpeciesBatchTableModel tableModel = handler.getTableModel(); + + // get selected row + int rowIndex = SwingUtil.getSelectedModelRow(ui.getTable()); + + // get selected column + int columnIndex = SwingUtil.getSelectedModelColumn(ui.getTable()); + + // get selected row + SpeciesBatchRowModel selectedRow = tableModel.getEntry(rowIndex); + + SampleCategoryModel sampleCategoryModel = handler.getSampleCategoryModel(); + + // get his sample category + Integer sampleCategoryId = tableModel.getSampleCategoryId(columnIndex); + SampleCategoryModelEntry sampleCategoryEntry = sampleCategoryModel.getCategoryById(sampleCategoryId); + Caracteristic caracteristic = sampleCategoryEntry.getCaracteristic(); + + // get the first ancestor row using this category + SpeciesBatchRowModel firstAncestorRow = selectedRow.getFirstAncestor(sampleCategoryId); + + // get used values + Set<Serializable> usedValues = handler.getSampleUsedValues(firstAncestorRow, sampleCategoryId); + + // get the new selected value for this category + Serializable selectedItem; + + String categoryDecorated = handler.getDecorator(caracteristic.getClass(), DecoratorService.CARACTERISTIC_PARAMETER_ONLY).toString(caracteristic); + String dialogTitle = t("tutti.editSpeciesBatch.title.changeSampleCategoryValue", categoryDecorated); + + boolean numericType = caracteristic.isNumericType(); + + if (numericType) { + + // open a simple number editor + NumberEditor editor = new NumberEditor(); + editor.setNumberPattern(TuttiUI.DECIMAL3_PATTERN); + editor.setUseSign(false); + editor.setShowPopupButton(false); + editor.setShowReset(false); + + int response = JOptionPane.showConfirmDialog(ui, + editor, + dialogTitle, + JOptionPane.OK_CANCEL_OPTION); + + if (response == JOptionPane.OK_OPTION) { + selectedItem = editor.getModel(); + } else { + // user cancel selection + selectedItem = null; + } + + if (usedValues.contains(selectedItem)) { + + // impossible de choisir cette valeur (déjà utilisée) + JOptionPane.showMessageDialog( + handler.getTopestUI(), + t("tutti.editSpeciesBatch.error.sampleCategoryValue.notAvailable", selectedItem, categoryDecorated)); + selectedItem = null; + } + + } else { + + // open a combobox to select new value + + List<CaracteristicQualitativeValue> availableValues = + Lists.newArrayList(caracteristic.getQualitativeValue()); + + boolean firstCategory = + sampleCategoryModel.getFirstCategoryId().equals(sampleCategoryId); + + if (firstCategory) { + + // remove the unsorted qualitative value + CaracteristicQualitativeValues.removeQualitativeValue(availableValues, handler.getQualitative_unsorted_id()); + } + + availableValues.removeAll(usedValues); + + JComboBox editor = new JComboBox(); + editor.setRenderer(new DecoratorListCellRenderer(handler.getDecorator(CaracteristicQualitativeValue.class, null))); + SwingUtil.fillComboBox(editor, availableValues, availableValues.get(0)); + + int response = JOptionPane.showConfirmDialog( + handler.getTopestUI(), + editor, + dialogTitle, + JOptionPane.OK_CANCEL_OPTION); + + if (response == JOptionPane.OK_OPTION) { + selectedItem = (CaracteristicQualitativeValue) editor.getSelectedItem(); + } else { + // user cancel selection + selectedItem = null; + } + } + + if (log.isDebugEnabled()) { + log.debug("New selected category: " + selectedItem); + } + + if (selectedItem != null) { + + // update rows values + Serializable oldValue = tableModel.updateSampleCategorieValue(firstAncestorRow, + columnIndex, + selectedItem); + + // save the first ancestor row with the modified category value + handler.saveRow(firstAncestorRow); + + if (!numericType) { + + // update speciesUsed cache + EditCatchesUIModel createBatchModel = ui.getParentContainer(EditCatchesUI.class).getModel(); + createBatchModel.replaceCaracteristicValue(firstAncestorRow.getSpecies(), (CaracteristicQualitativeValue) oldValue, (CaracteristicQualitativeValue) selectedItem); + + } + + } + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CreateSpeciesMelagAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/CreateSpeciesMelagAction.java similarity index 96% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CreateSpeciesMelagAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/CreateSpeciesMelagAction.java index 0fc90ae..36fc93e 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CreateSpeciesMelagAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/CreateSpeciesMelagAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.collect.Maps; import fr.ifremer.tutti.type.WeightUnit; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.SpeciesAbleBatchRowHelper; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchRowModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchTableModel; @@ -44,7 +45,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <kmorin@codelutin.com> * @since 1.0.2 */ -public class CreateSpeciesMelagAction extends AbstractTuttiAction<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { +public class CreateSpeciesMelagAction extends LongActionSupport<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { /** * Dictionnaire des lots du melag associé a leur poids d'echantillonnage (si un lot possède un poids de categorisation, diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostSpeciesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ExportMultiPostSpeciesAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostSpeciesAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ExportMultiPostSpeciesAction.java index 00ae152..6557b8f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportMultiPostSpeciesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ExportMultiPostSpeciesAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.catches.multipost.MultiPostExportService; +import fr.ifremer.tutti.ui.swing.content.operation.catches.actions.ExportMultiPostActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUIModel; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportBigfinAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportBigfinAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportBigfinAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportBigfinAction.java index eb232a5..fdd4e03 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportBigfinAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportBigfinAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions; /* * #%L @@ -27,6 +27,8 @@ import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.PersistenceService; import fr.ifremer.tutti.service.bigfin.BigfinImportResult; import fr.ifremer.tutti.service.bigfin.BigfinImportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; +import fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.EditFishingOperationAction; import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; @@ -42,7 +44,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ImportBigfinAction extends AbstractTuttiAction<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { +public class ImportBigfinAction extends LongActionSupport<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { protected File importedBigfinFile; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostSpeciesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportMultiPostSpeciesAction.java similarity index 96% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostSpeciesAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportMultiPostSpeciesAction.java index 36c50a7..581c544 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportMultiPostSpeciesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportMultiPostSpeciesAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions; /* * #%L @@ -27,6 +27,7 @@ import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.persistence.entities.data.SpeciesBatch; import fr.ifremer.tutti.service.catches.multipost.MultiPostImportService; import fr.ifremer.tutti.type.WeightUnit; +import fr.ifremer.tutti.ui.swing.content.operation.catches.actions.ImportMultiPostActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUIModel; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportPsionAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportPsionAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportPsionAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportPsionAction.java index 230d3e5..0bf0a75 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportPsionAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportPsionAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions; /* * #%L @@ -27,6 +27,8 @@ import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.PersistenceService; import fr.ifremer.tutti.service.psionimport.PsionImportResult; import fr.ifremer.tutti.service.psionimport.PsionImportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; +import fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.EditFishingOperationAction; import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; @@ -44,7 +46,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit <chemit@codelutin.com> * @since 3.1 */ -public class ImportPsionAction extends AbstractTuttiAction<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { +public class ImportPsionAction extends LongActionSupport<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { protected File importedTrunkFile; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportPupitriAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportPupitriAction.java similarity index 96% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportPupitriAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportPupitriAction.java index b9242c7..f97e535 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportPupitriAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportPupitriAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions; /* * #%L @@ -31,6 +31,8 @@ import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel; import fr.ifremer.tutti.service.PersistenceService; import fr.ifremer.tutti.service.pupitri.PupitriImportResult; import fr.ifremer.tutti.service.pupitri.PupitriImportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; +import fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.EditFishingOperationAction; import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; @@ -57,7 +59,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ImportPupitriAction extends AbstractTuttiAction<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { +public class ImportPupitriAction extends LongActionSupport<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { /** Logger. */ private static final Log log = LogFactory.getLog(ImportPupitriAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/OpenAddSpeciesBatchSampleCategoryUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/OpenAddSpeciesBatchSampleCategoryUIAction.java new file mode 100644 index 0000000..85f4c36 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/OpenAddSpeciesBatchSampleCategoryUIAction.java @@ -0,0 +1,82 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions; + +import com.google.common.base.Preconditions; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchRowModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchTableModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.split.SplitSpeciesBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import jaxx.runtime.SwingUtil; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import static org.nuiton.i18n.I18n.t; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class OpenAddSpeciesBatchSampleCategoryUIAction extends SimpleActionSupport<SpeciesBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(OpenAddSpeciesBatchSampleCategoryUIAction.class); + + private static final long serialVersionUID = -6540241422935319461L; + + public OpenAddSpeciesBatchSampleCategoryUIAction(SpeciesBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(SpeciesBatchUI ui) { + + // get table model + SpeciesBatchTableModel tableModel = ui.getHandler().getTableModel(); + + // get selected row + int rowIndex = SwingUtil.getSelectedModelRow(ui.getTable()); + Preconditions.checkState(rowIndex != -1, "Cant split batch if no batch selected"); + + // get selected column + int columnIndex = SwingUtil.getSelectedModelColumn(ui.getTable()); + Preconditions.checkState(columnIndex != -1, "Cant split batch if no batch selected"); + + // get selected row + SpeciesBatchRowModel selectedRow = tableModel.getEntry(rowIndex); + + // get his sample category + Integer sampleCategoryId = tableModel.getSampleCategoryId(columnIndex); + + // get the first ancestor row using this category + SpeciesBatchRowModel firstAncestorRow = selectedRow.getFirstAncestor(sampleCategoryId); + + // get his parent (the one we will edit) + SpeciesBatchRowModel parentBatch = firstAncestorRow.getParentBatch(); + + if (log.isDebugEnabled()) { + log.debug("Open addChangeCategory batch ui for row [" + rowIndex + "] and category " + sampleCategoryId); + } + + EditCatchesUI parentUI = ui.getParentContainer(EditCatchesUI.class); + SplitSpeciesBatchUI splitBatchEditor = parentUI.getSpeciesTabAddSampleCategoryBatch(); + +// parentUI.getHandler().addSampleCategorySpeciesBatch(parentBatch, splitBatchEditor, sampleCategoryId); + + splitBatchEditor.getHandler().editBatch(parentBatch, sampleCategoryId); + + // open split editor + parentUI.getHandler().setSpeciesSelectedCard(EditCatchesUIHandler.ADD_SAMPLE_CATEGORY_BATCH_CARD); + + // update title + String title = parentUI.getHandler().buildReminderLabelTitle(parentBatch.getSpecies(), + parentBatch, + parentUI.getSpeciesTabFishingOperationReminderLabel().getTitle(), + t("tutti.addSampleCategorySpeciesBatch.title")); + parentUI.getSpeciesTabAddSampleCategoryBatchReminderLabel().setTitle(title); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/OpenCreateSpeciesBatchUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/OpenCreateSpeciesBatchUIAction.java new file mode 100644 index 0000000..9e16c2c --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/OpenCreateSpeciesBatchUIAction.java @@ -0,0 +1,38 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.CreateSpeciesBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class OpenCreateSpeciesBatchUIAction extends SimpleActionSupport<SpeciesBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(OpenCreateSpeciesBatchUIAction.class); + + private static final long serialVersionUID = 1L; + + public OpenCreateSpeciesBatchUIAction(SpeciesBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(SpeciesBatchUI ui) { + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + CreateSpeciesBatchUI createBatchEditor = parent.getSpeciesTabCreateBatch(); + + createBatchEditor.getHandler().openUI(ui.getModel()); + parent.getHandler().setSpeciesSelectedCard(EditCatchesUIHandler.CREATE_BATCH_CARD); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/OpenEditSpeciesBatchFrequencyUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/OpenEditSpeciesBatchFrequencyUIAction.java new file mode 100644 index 0000000..e225313 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/OpenEditSpeciesBatchFrequencyUIAction.java @@ -0,0 +1,51 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchTableModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.frequency.SpeciesFrequencyCellComponent; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import jaxx.runtime.SwingUtil; +import jaxx.runtime.swing.JTables; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.jdesktop.swingx.JXTable; +import org.jdesktop.swingx.table.TableColumnModelExt; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class OpenEditSpeciesBatchFrequencyUIAction extends SimpleActionSupport<SpeciesBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(OpenEditSpeciesBatchFrequencyUIAction.class); + + private static final long serialVersionUID = 1L; + + public OpenEditSpeciesBatchFrequencyUIAction(SpeciesBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(SpeciesBatchUI ui) { + + JXTable table = ui.getTable(); + + int rowIndex = SwingUtil.getSelectedModelRow(table); + + TableColumnModelExt columnModel = (TableColumnModelExt) table.getColumnModel(); + + int columnIndex = columnModel.getColumnIndex(SpeciesBatchTableModel.COMPUTED_NUMBER); + + JTables.doSelectCell(table, rowIndex, columnIndex); + + SpeciesFrequencyCellComponent.FrequencyCellEditor cellEditor = + (SpeciesFrequencyCellComponent.FrequencyCellEditor) + columnModel.getColumnExt(columnIndex).getCellEditor(); + cellEditor.startEdit(); + + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/OpenSplitSpeciesBatchUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/OpenSplitSpeciesBatchUIAction.java new file mode 100644 index 0000000..6b721ba --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/OpenSplitSpeciesBatchUIAction.java @@ -0,0 +1,95 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions; + +import com.google.common.base.Preconditions; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchRowModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchTableModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUIHandler; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.split.SplitSpeciesBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import jaxx.runtime.SwingUtil; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.jdesktop.swingx.JXTable; + +import javax.swing.JOptionPane; + +import static org.nuiton.i18n.I18n.t; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class OpenSplitSpeciesBatchUIAction extends SimpleActionSupport<SpeciesBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(OpenSplitSpeciesBatchUIAction.class); + + private static final long serialVersionUID = -6540241422935319461L; + + public OpenSplitSpeciesBatchUIAction(SpeciesBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(SpeciesBatchUI ui) { + + JXTable table = ui.getTable(); + + // get selected row + int rowIndex = SwingUtil.getSelectedModelRow(table); + + Preconditions.checkState(rowIndex != -1, "Cant split batch if no batch selected"); + + SpeciesBatchUIHandler handler = ui.getHandler(); + SpeciesBatchTableModel tableModel = handler.getTableModel(); + + SpeciesBatchRowModel parentBatch = tableModel.getEntry(rowIndex); + + boolean split = true; + if (parentBatch.getWeight() != null) { + String htmlMessage = String.format( + SpeciesBatchUIHandler.CONFIRMATION_FORMAT, + t("tutti.editSpeciesBatch.split.weightNotNull.message"), + t("tutti.editSpeciesBatch.split.weightNotNull.help")); + int i = JOptionPane.showConfirmDialog( + handler.getTopestUI(), + htmlMessage, + t("tutti.editSpeciesBatch.split.weightNotNull.title"), + JOptionPane.OK_CANCEL_OPTION); + + if (i == JOptionPane.OK_OPTION) { + parentBatch.setWeight(null); + + } else { + split = false; + } + } + + if (split) { + if (log.isDebugEnabled()) { + log.debug("Open split batch ui for row [" + rowIndex + ']'); + } + + EditCatchesUI parentUI = ui.getParentContainer(EditCatchesUI.class); + SplitSpeciesBatchUI splitBatchEditor = parentUI.getSpeciesTabSplitBatch(); + + splitBatchEditor.getHandler().editBatch(parentBatch); + + // open split editor + parentUI.getHandler().setSpeciesSelectedCard(EditCatchesUIHandler.SPLIT_BATCH_CARD); + + // update title + String title = handler.buildReminderLabelTitle(parentBatch.getSpecies(), + parentBatch, + parentUI.getSpeciesTabFishingOperationReminderLabel().getTitle(), + t("tutti.splitSpeciesBatch.title")); + parentUI.getSpeciesTabSplitBatchReminderLabel().setTitle(title); + } + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveSpeciesBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RemoveSpeciesBatchAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveSpeciesBatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RemoveSpeciesBatchAction.java index 8bde904..a9fe585 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveSpeciesBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RemoveSpeciesBatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.base.Preconditions; import com.google.common.collect.Sets; import fr.ifremer.tutti.persistence.TuttiPersistence; import fr.ifremer.tutti.persistence.entities.TuttiEntities; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchRowModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchTableModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI; @@ -46,7 +47,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class RemoveSpeciesBatchAction extends AbstractTuttiAction<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { +public class RemoveSpeciesBatchAction extends LongActionSupport<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { /** * Rows to delete after all. diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveSpeciesSubBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RemoveSpeciesSubBatchAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveSpeciesSubBatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RemoveSpeciesSubBatchAction.java index 2ce02f3..aa0ca16 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveSpeciesSubBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RemoveSpeciesSubBatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.base.Preconditions; import com.google.common.collect.Sets; import fr.ifremer.tutti.persistence.TuttiPersistence; import fr.ifremer.tutti.persistence.entities.TuttiEntities; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchRowModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUIHandler; @@ -45,7 +46,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class RemoveSpeciesSubBatchAction extends AbstractTuttiAction<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { +public class RemoveSpeciesSubBatchAction extends LongActionSupport<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { /** * Selected row to treat. diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RenameSpeciesBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RenameSpeciesBatchAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RenameSpeciesBatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RenameSpeciesBatchAction.java index 43095a9..1b3080d 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RenameSpeciesBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RenameSpeciesBatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.actions; /* * #%L @@ -27,6 +27,7 @@ import fr.ifremer.tutti.persistence.entities.data.SampleCategory; import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.service.PersistenceService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchRowModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchTableModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI; @@ -47,7 +48,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class RenameSpeciesBatchAction extends AbstractTuttiAction<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { +public class RenameSpeciesBatchAction extends LongActionSupport<SpeciesBatchUIModel, SpeciesBatchUI, SpeciesBatchUIHandler> { protected Species selectedSpecies; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUI.css index b40fa6f..50d8ff4 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUI.css @@ -141,7 +141,7 @@ NumberEditor { text: "tutti.createSpeciesBatch.action.addSpecies"; toolTipText: "tutti.createSpeciesBatch.action.addSpecies.tip"; i18nMnemonic: "tutti.createSpeciesBatch.action.addSpecies.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SelectSpeciesForSpeciesBatchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.actions.SelectSpeciesForSpeciesBatchAction.class}; _help: {"tutti.createSpeciesBatch.action.addSpecies.help"}; } @@ -151,6 +151,7 @@ NumberEditor { toolTipText: "tutti.createSpeciesBatch.action.saveAndContinue.tip"; i18nMnemonic: "tutti.createSpeciesBatch.action.saveAndContinue.mnemonic"; enabled: {model.isValid()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.actions.CreateSpeciesBatchAndContinueAction.class}; _help: {"tutti.createSpeciesBatch.action.saveAndContinue.help"}; } @@ -160,6 +161,7 @@ NumberEditor { toolTipText: "tutti.createSpeciesBatch.action.saveAndClose.tip"; i18nMnemonic: "tutti.createSpeciesBatch.action.saveAndClose.mnemonic"; enabled: {model.isValid()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.actions.CreateSpeciesBatchAndCloseAction.class}; _help: {"tutti.createSpeciesBatch.action.saveAndClose.help"}; } @@ -168,5 +170,6 @@ NumberEditor { text: "tutti.createSpeciesBatch.action.cancel"; toolTipText: "tutti.createSpeciesBatch.action.cancel.tip"; i18nMnemonic: "tutti.createSpeciesBatch.action.cancel.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.actions.CreateSpeciesBatchCancelAction.class}; _help: {"tutti.createSpeciesBatch.action.cancel.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUI.jaxx index f5eef9f..d523757 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUI.jaxx @@ -157,8 +157,8 @@ public CreateSpeciesBatchUI(EditCatchesUI parentUI) { <!-- Form Actions --> <JPanel layout='{new GridLayout(1, 0)}' constraints='BorderLayout.SOUTH'> - <JButton id='cancelButton' onActionPerformed='handler.cancel()'/> - <JButton id='saveAndContinueButton' onActionPerformed='handler.saveAndContinue()'/> - <JButton id='saveAndCloseButton' onActionPerformed='handler.saveAndClose()'/> + <JButton id='cancelButton'/> + <JButton id='saveAndContinueButton'/> + <JButton id='saveAndCloseButton'/> </JPanel> </JPanel> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUIHandler.java index bc4c7da..bc5830a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUIHandler.java @@ -26,24 +26,20 @@ import com.google.common.base.Preconditions; import com.google.common.collect.Lists; import com.google.common.collect.Multimap; import fr.ifremer.adagio.core.dao.referential.pmfm.QualitativeValueId; -import org.nuiton.jaxx.application.swing.util.Cancelable; -import fr.ifremer.tutti.type.WeightUnit; import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel; import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModelEntry; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.service.DecoratorService; +import fr.ifremer.tutti.type.WeightUnit; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; -import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUIModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.split.SplitSpeciesBatchRowModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.split.SplitSpeciesBatchTableModel; import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor; import fr.ifremer.tutti.ui.swing.util.TuttiUI; -import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUI; -import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUIModel; import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableUIHandler; import jaxx.runtime.validator.swing.SwingValidator; import org.apache.commons.logging.Log; @@ -52,7 +48,6 @@ import org.jdesktop.swingx.JXTable; import org.jdesktop.swingx.table.DefaultTableColumnModelExt; import javax.swing.JComponent; -import java.awt.Dimension; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.util.List; @@ -63,8 +58,7 @@ import java.util.List; * @author tchemit <chemit@codelutin.com> * @since 0.3 */ -public class CreateSpeciesBatchUIHandler extends - AbstractTuttiTableUIHandler<SplitSpeciesBatchRowModel, CreateSpeciesBatchUIModel, CreateSpeciesBatchUI> implements Cancelable { +public class CreateSpeciesBatchUIHandler extends AbstractTuttiTableUIHandler<SplitSpeciesBatchRowModel, CreateSpeciesBatchUIModel, CreateSpeciesBatchUI> { /** Logger. */ private static final Log log = @@ -337,18 +331,6 @@ public class CreateSpeciesBatchUIHandler extends } //------------------------------------------------------------------------// - //-- Cancelable methods --// - //------------------------------------------------------------------------// - - @Override - public void cancel() { - if (log.isDebugEnabled()) { - log.debug("Cancel UI " + ui); - } - closeUI(ui); - } - - //------------------------------------------------------------------------// //-- Public methods --// //------------------------------------------------------------------------// @@ -384,33 +366,6 @@ public class CreateSpeciesBatchUIHandler extends model.setAvailableSpecies(speciesToUse); } - public void saveAndContinue() { - - if (log.isDebugEnabled()) { - log.debug("Save And Continue UI " + ui); - } - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - SpeciesBatchUI speciesTabContent = parent.getSpeciesTabContent(); - speciesTabContent.getHandler().addBatch(getModel()); - - // re-open this screen - openUI(speciesTabContent.getModel()); - } - - public void saveAndClose() { - - if (log.isDebugEnabled()) { - log.debug("Save and Close UI " + ui); - } - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - parent.getSpeciesTabContent().getHandler().addBatch(getModel()); - - // close dialog - closeUI(ui); - } - //------------------------------------------------------------------------// //-- Internal methods --// //------------------------------------------------------------------------// diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/CreateSpeciesBatchAndCloseAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/CreateSpeciesBatchAndCloseAction.java new file mode 100644 index 0000000..34cdaac --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/CreateSpeciesBatchAndCloseAction.java @@ -0,0 +1,40 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.CreateSpeciesBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CreateSpeciesBatchAndCloseAction extends SimpleActionSupport<CreateSpeciesBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CreateSpeciesBatchAndCloseAction.class); + + private static final long serialVersionUID = 1L; + + public CreateSpeciesBatchAndCloseAction(CreateSpeciesBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CreateSpeciesBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Save and Close UI " + ui); + } + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + parent.getSpeciesTabContent().getHandler().addBatch(ui.getModel()); + + // close dialog + ui.getHandler().onCloseUI(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/CreateSpeciesBatchAndContinueAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/CreateSpeciesBatchAndContinueAction.java new file mode 100644 index 0000000..cb91f76 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/CreateSpeciesBatchAndContinueAction.java @@ -0,0 +1,43 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.CreateSpeciesBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CreateSpeciesBatchAndContinueAction extends SimpleActionSupport<CreateSpeciesBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CreateSpeciesBatchAndContinueAction.class); + + private static final long serialVersionUID = 1L; + + public CreateSpeciesBatchAndContinueAction(CreateSpeciesBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CreateSpeciesBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Save and Continue UI " + ui); + } + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + SpeciesBatchUI benthosTabContent = parent.getSpeciesTabContent(); + benthosTabContent.getHandler().addBatch(ui.getModel()); + + // re-open this screen + ui.getHandler().openUI(benthosTabContent.getModel()); + + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/CreateSpeciesBatchCancelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/CreateSpeciesBatchCancelAction.java new file mode 100644 index 0000000..eec69e8 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/CreateSpeciesBatchCancelAction.java @@ -0,0 +1,35 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.CreateSpeciesBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CreateSpeciesBatchCancelAction extends SimpleActionSupport<CreateSpeciesBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CreateSpeciesBatchCancelAction.class); + + private static final long serialVersionUID = 1L; + + public CreateSpeciesBatchCancelAction(CreateSpeciesBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CreateSpeciesBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Cancel UI " + ui); + } + + ui.getHandler().onCloseUI(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectSpeciesForSpeciesBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/SelectSpeciesForSpeciesBatchAction.java similarity index 92% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectSpeciesForSpeciesBatchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/SelectSpeciesForSpeciesBatchAction.java index faf18c2..387af61 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectSpeciesForSpeciesBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/SelectSpeciesForSpeciesBatchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.collect.Lists; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.persistence.entities.referential.Speciess; import fr.ifremer.tutti.service.DecoratorService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.CreateSpeciesBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.CreateSpeciesBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.create.CreateSpeciesBatchUIModel; @@ -41,7 +42,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <kmorin@codelutin.com> * @since 1.0 */ -public class SelectSpeciesForSpeciesBatchAction extends AbstractTuttiAction<CreateSpeciesBatchUIModel, CreateSpeciesBatchUI, CreateSpeciesBatchUIHandler> { +public class SelectSpeciesForSpeciesBatchAction extends LongActionSupport<CreateSpeciesBatchUIModel, CreateSpeciesBatchUI, CreateSpeciesBatchUIHandler> { protected List<Species> allSpecies; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.css index 0482c47..2e8f900 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.css @@ -81,6 +81,7 @@ text: "tutti.splitSpeciesBatch.action.cancel"; toolTipText: "tutti.splitSpeciesBatch.action.cancel.tip"; i18nMnemonic: "tutti.splitSpeciesBatch.action.cancel.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.split.actions.SplitSpeciesBatchCancelAction.class}; _help: {"tutti.splitSpeciesBatch.action.cancel.help"}; } @@ -90,5 +91,6 @@ toolTipText: "tutti.splitSpeciesBatch.action.save.tip"; i18nMnemonic: "tutti.splitSpeciesBatch.action.save.mnemonic"; enabled: {model.isValid()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.catches.species.split.actions.SplitSpeciesBatchSaveAction.class}; _help: {"tutti.splitSpeciesBatch.action.save.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.jaxx index 1539c3c..306b50a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.jaxx @@ -108,8 +108,8 @@ public SplitSpeciesBatchUI(EditCatchesUI parentUI) { <!-- actions --> <JPanel id='actionPanel' layout='{new GridLayout(1, 0)}' constraints='BorderLayout.SOUTH'> - <JButton id='cancelButton' onActionPerformed='handler.cancel()'/> - <JButton id='saveButton' onActionPerformed='handler.save()'/> + <JButton id='cancelButton'/> + <JButton id='saveButton'/> </JPanel> </JPanel> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUIHandler.java index 81f326a..f6ab59d 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUIHandler.java @@ -26,7 +26,6 @@ import com.google.common.base.Function; import com.google.common.base.Preconditions; import com.google.common.collect.Lists; import com.google.common.collect.Maps; -import org.nuiton.jaxx.application.swing.util.Cancelable; import fr.ifremer.tutti.persistence.entities.data.SampleCategory; import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel; import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModelEntry; @@ -61,8 +60,7 @@ import java.util.Map; * @author tchemit <chemit@codelutin.com> * @since 0.3 */ -public class SplitSpeciesBatchUIHandler - extends AbstractTuttiTableUIHandler<SplitSpeciesBatchRowModel, SplitSpeciesBatchUIModel, SplitSpeciesBatchUI> implements Cancelable { +public class SplitSpeciesBatchUIHandler extends AbstractTuttiTableUIHandler<SplitSpeciesBatchRowModel, SplitSpeciesBatchUIModel, SplitSpeciesBatchUI> { /** Logger. */ private static final Log log = @@ -240,19 +238,6 @@ public class SplitSpeciesBatchUIHandler } //------------------------------------------------------------------------// - //-- Cancelable methods --// - //------------------------------------------------------------------------// - - @Override - public void cancel() { - - if (log.isDebugEnabled()) { - log.debug("Cancel UI " + ui); - } - closeUI(ui); - } - - //------------------------------------------------------------------------// //-- Public methods --// //------------------------------------------------------------------------// @@ -362,33 +347,6 @@ public class SplitSpeciesBatchUIHandler getTableModel().fireTableDataChanged(); } - public void save() { - - if (log.isDebugEnabled()) { - log.debug("Save UI " + ui); - } - - EditCatchesUI parent = getParentContainer(EditCatchesUI.class); - SplitSpeciesBatchUIModel model = getModel(); - if (model.isValid()) { - if (model.isSplitMode()) { - parent.getSpeciesTabContent().getHandler().splitBatch( - model.getSelectedCategory(), - model.getRows(), - model.getSampleWeight()); - } else { - parent.getSpeciesTabContent().getHandler().addSampleCategoryBatch( - model.getBatch(), - model.getSelectedCategory(), - model.getRows(), - model.getSampleWeight()); - } - } - - // close dialog - closeUI(ui); - } - //------------------------------------------------------------------------// //-- Internal methods --// //------------------------------------------------------------------------// diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/actions/SplitSpeciesBatchCancelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/actions/SplitSpeciesBatchCancelAction.java new file mode 100644 index 0000000..69b174f --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/actions/SplitSpeciesBatchCancelAction.java @@ -0,0 +1,34 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.split.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.split.SplitSpeciesBatchUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class SplitSpeciesBatchCancelAction extends SimpleActionSupport<SplitSpeciesBatchUI>{ + + /** Logger. */ + private static final Log log = LogFactory.getLog(SplitSpeciesBatchCancelAction.class); + + private static final long serialVersionUID = 1L; + + public SplitSpeciesBatchCancelAction(SplitSpeciesBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(SplitSpeciesBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Cancel UI " + ui); + } + ui.getHandler().onCloseUI(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/actions/SplitSpeciesBatchSaveAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/actions/SplitSpeciesBatchSaveAction.java new file mode 100644 index 0000000..d923563 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/actions/SplitSpeciesBatchSaveAction.java @@ -0,0 +1,55 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.species.split.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.split.SplitSpeciesBatchUI; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.split.SplitSpeciesBatchUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class SplitSpeciesBatchSaveAction extends SimpleActionSupport<SplitSpeciesBatchUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(SplitSpeciesBatchSaveAction.class); + + private static final long serialVersionUID = 1L; + + public SplitSpeciesBatchSaveAction(SplitSpeciesBatchUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(SplitSpeciesBatchUI ui) { + + if (log.isDebugEnabled()) { + log.debug("Save UI " + ui); + } + + EditCatchesUI parent = ui.getParentContainer(EditCatchesUI.class); + SplitSpeciesBatchUIModel model = ui.getModel(); + if (model.isValid()) { + if (model.isSplitMode()) { + parent.getSpeciesTabContent().getHandler().splitBatch( + model.getSelectedCategory(), + model.getRows(), + model.getSampleWeight()); + } else { + parent.getSpeciesTabContent().getHandler().addSampleCategoryBatch( + model.getBatch(), + model.getSelectedCategory(), + model.getRows(), + model.getSampleWeight()); + } + } + + // close dialog + ui.getHandler().onCloseUI(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUI.css index 6483cef..0c40e4f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUI.css @@ -32,6 +32,7 @@ BeanFilterableComboBox { #addRow { actionIcon: add; enabled: {newRowKey.getSelectedItem() != null}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.GearUseFeatureAddRowAction.class}; } #gearUseFeatureTable { @@ -47,4 +48,5 @@ BeanFilterableComboBox { toolTipText: "tutti.gearUseFeatureTable.action.removeCaracteristic.tip"; i18nMnemonic: "tutti.gearUseFeatureTable.action.removeCaracteristic.mnemonic"; enabled: {model.isRemoveCaracteristicEnabled()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.GearUseFeatureRemoveRowAction.class}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUI.jaxx index 0a704b3..61e6ff0 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUI.jaxx @@ -44,8 +44,7 @@ public GearUseFeatureTabUI(EditFishingOperationUI parentUI) { ]]></script> <JPopupMenu id='tablePopup'> - <JMenuItem id='removeCaracteristicMenu' - onActionPerformed='handler.removeCaracteristic()'/> + <JMenuItem id='removeCaracteristicMenu'/> </JPopupMenu> <row fill='both'> @@ -54,7 +53,7 @@ public GearUseFeatureTabUI(EditFishingOperationUI parentUI) { genericType='Caracteristic'/> </cell> <cell fill='both'> - <JButton id='addRow' onActionPerformed='handler.addRow()'/> + <JButton id='addRow'/> </cell> </row> <row fill='both' weighty='1'> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUI.css index 26497aa..bc57c0c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUI.css @@ -32,6 +32,7 @@ BeanFilterableComboBox { #addRow { actionIcon: add; enabled: {newRowKey.getSelectedItem() != null}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.VesselUseFeatureAddRowAction.class}; } #vesselUseFeatureTable { @@ -47,4 +48,5 @@ BeanFilterableComboBox { toolTipText: "tutti.vesselUseFeatureTable.action.removeCaracteristic.tip"; i18nMnemonic: "tutti.vesselUseFeatureTable.action.removeCaracteristic.mnemonic"; enabled: {model.isRemoveCaracteristicEnabled()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.VesselUseFeatureRemoveRowAction.class}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUI.jaxx index 48e7ac5..d04edf2 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUI.jaxx @@ -45,8 +45,7 @@ public VesselUseFeatureTabUI(EditFishingOperationUI parentUI) { ]]></script> <JPopupMenu id='tablePopup'> - <JMenuItem id='removeCaracteristicMenu' - onActionPerformed='handler.removeCaracteristic()'/> + <JMenuItem id='removeCaracteristicMenu'/> </JPopupMenu> <row fill='both'> @@ -55,7 +54,7 @@ public VesselUseFeatureTabUI(EditFishingOperationUI parentUI) { genericType='Caracteristic'/> </cell> <cell fill='both'> - <JButton id='addRow' onActionPerformed='handler.addRow()'/> + <JButton id='addRow'/> </cell> </row> <row fill='both' weighty='1'> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CancelEditFishingOperationAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/CancelEditFishingOperationAction.java similarity index 92% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CancelEditFishingOperationAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/CancelEditFishingOperationAction.java index 2c135e8..5fa0862 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CancelEditFishingOperationAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/CancelEditFishingOperationAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.fishing.actions; /* * #%L @@ -22,6 +22,7 @@ package fr.ifremer.tutti.ui.swing.action; * #L% */ +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUI; import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUIModel; @@ -34,7 +35,7 @@ import org.apache.commons.logging.LogFactory; * @author kmorin <kmorin@codelutin.com> * @since 1.0 */ -public class CancelEditFishingOperationAction extends AbstractTuttiAction<EditFishingOperationUIModel, EditFishingOperationUI, EditFishingOperationUIHandler> { +public class CancelEditFishingOperationAction extends LongActionSupport<EditFishingOperationUIModel, EditFishingOperationUI, EditFishingOperationUIHandler> { /** Logger. */ private static final Log log = LogFactory.getLog(SaveFishingOperationAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/DeleteFishingOperationAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/DeleteFishingOperationAction.java similarity index 91% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/DeleteFishingOperationAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/DeleteFishingOperationAction.java index 500bc08..5d5e246 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/DeleteFishingOperationAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/DeleteFishingOperationAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.fishing.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import fr.ifremer.tutti.persistence.entities.TuttiEntities; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI; import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUIModel; @@ -38,7 +39,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 2.2 */ -public class DeleteFishingOperationAction extends AbstractTuttiAction<FishingOperationsUIModel, FishingOperationsUI, FishingOperationsUIHandler> { +public class DeleteFishingOperationAction extends LongActionSupport<FishingOperationsUIModel, FishingOperationsUI, FishingOperationsUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditFishingOperationAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/EditFishingOperationAction.java similarity index 98% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditFishingOperationAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/EditFishingOperationAction.java index 50a9e99..f383b9e 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditFishingOperationAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/EditFishingOperationAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.fishing.actions; /* * #%L @@ -40,6 +40,9 @@ import fr.ifremer.tutti.persistence.entities.referential.Person; import fr.ifremer.tutti.persistence.entities.referential.TuttiLocation; import fr.ifremer.tutti.persistence.entities.referential.Vessel; import fr.ifremer.tutti.service.PersistenceService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; +import fr.ifremer.tutti.ui.swing.content.operation.catches.actions.ComputeBatchWeightsAction; +import fr.ifremer.tutti.ui.swing.content.operation.catches.actions.SaveCatchBatchAction; import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUI; import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUIModel; @@ -77,11 +80,10 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class EditFishingOperationAction extends AbstractTuttiAction<FishingOperationsUIModel, FishingOperationsUI, FishingOperationsUIHandler> { +public class EditFishingOperationAction extends LongActionSupport<FishingOperationsUIModel, FishingOperationsUI, FishingOperationsUIHandler> { /** Logger. */ - private static final Log log = - LogFactory.getLog(EditFishingOperationAction.class); + private static final Log log = LogFactory.getLog(EditFishingOperationAction.class); /** * The incoming fishing operation to edit. diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/GearUseFeatureAddRowAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/GearUseFeatureAddRowAction.java new file mode 100644 index 0000000..c0abdd9 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/GearUseFeatureAddRowAction.java @@ -0,0 +1,27 @@ +package fr.ifremer.tutti.ui.swing.content.operation.fishing.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.fishing.GearUseFeatureTabUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class GearUseFeatureAddRowAction extends SimpleActionSupport<GearUseFeatureTabUI> { + + private static final long serialVersionUID = 1L; + + public GearUseFeatureAddRowAction(GearUseFeatureTabUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(GearUseFeatureTabUI ui) { + + ui.getHandler().addRow(); + + } + +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/GearUseFeatureRemoveRowAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/GearUseFeatureRemoveRowAction.java new file mode 100644 index 0000000..69ecfb5 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/GearUseFeatureRemoveRowAction.java @@ -0,0 +1,27 @@ +package fr.ifremer.tutti.ui.swing.content.operation.fishing.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.fishing.GearUseFeatureTabUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class GearUseFeatureRemoveRowAction extends SimpleActionSupport<GearUseFeatureTabUI> { + + private static final long serialVersionUID = 1L; + + public GearUseFeatureRemoveRowAction(GearUseFeatureTabUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(GearUseFeatureTabUI ui) { + + ui.getHandler().removeCaracteristic(); + + } + +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportFishingOperationCaracteristicsFromColumnFileAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/ImportFishingOperationCaracteristicsFromColumnFileAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportFishingOperationCaracteristicsFromColumnFileAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/ImportFishingOperationCaracteristicsFromColumnFileAction.java index 1e4aca3..0d7ee6d 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportFishingOperationCaracteristicsFromColumnFileAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/ImportFishingOperationCaracteristicsFromColumnFileAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.fishing.actions; /* * #%L @@ -30,9 +30,11 @@ import fr.ifremer.tutti.service.operationimport.FishingOperationImportService; import fr.ifremer.tutti.service.operationimport.ImportFromColumnFileFishingOperationNotFoundException; import fr.ifremer.tutti.service.operationimport.ImportFromColumnFileInvalidRowException; import fr.ifremer.tutti.service.operationimport.ImportFromColumnFileMissingHeaderException; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUI; import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUIModel; +import fr.ifremer.tutti.ui.swing.content.protocol.actions.LoadProtocolImportColumnsAction; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.nuiton.csv.AbstractImportErrorInfo; @@ -48,7 +50,7 @@ import static org.nuiton.i18n.I18n.t; * @author Kevin Morin (Code Lutin) * @since 3.10 */ -public class ImportFishingOperationCaracteristicsFromColumnFileAction extends AbstractTuttiAction<EditFishingOperationUIModel, EditFishingOperationUI, EditFishingOperationUIHandler> { +public class ImportFishingOperationCaracteristicsFromColumnFileAction extends LongActionSupport<EditFishingOperationUIModel, EditFishingOperationUI, EditFishingOperationUIHandler> { private static final Log log = LogFactory.getLog(LoadProtocolImportColumnsAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/NewFishingOperationAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/NewFishingOperationAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/NewFishingOperationAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/NewFishingOperationAction.java index 9bf258b..b1fd0b0 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/NewFishingOperationAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/NewFishingOperationAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.fishing.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveFishingOperationAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/SaveFishingOperationAction.java similarity index 95% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveFishingOperationAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/SaveFishingOperationAction.java index b3cbcc8..480ee36 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveFishingOperationAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/SaveFishingOperationAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.operation.fishing.actions; /* * #%L @@ -29,6 +29,7 @@ import fr.ifremer.tutti.persistence.entities.data.CatchBatchs; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.PersistenceService; import fr.ifremer.tutti.service.ValidationService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUI; import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUIModel; @@ -45,7 +46,7 @@ import org.apache.commons.logging.LogFactory; * @author kmorin <kmorin@codelutin.com> * @since 1.0 */ -public class SaveFishingOperationAction extends AbstractTuttiAction<EditFishingOperationUIModel, EditFishingOperationUI, EditFishingOperationUIHandler> { +public class SaveFishingOperationAction extends LongActionSupport<EditFishingOperationUIModel, EditFishingOperationUI, EditFishingOperationUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/VesselUseFeatureAddRowAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/VesselUseFeatureAddRowAction.java new file mode 100644 index 0000000..67495d0 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/VesselUseFeatureAddRowAction.java @@ -0,0 +1,27 @@ +package fr.ifremer.tutti.ui.swing.content.operation.fishing.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.fishing.VesselUseFeatureTabUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class VesselUseFeatureAddRowAction extends SimpleActionSupport<VesselUseFeatureTabUI> { + + private static final long serialVersionUID = 1L; + + public VesselUseFeatureAddRowAction(VesselUseFeatureTabUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(VesselUseFeatureTabUI ui) { + + ui.getHandler().addRow(); + + } + +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/VesselUseFeatureRemoveRowAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/VesselUseFeatureRemoveRowAction.java new file mode 100644 index 0000000..59bcf88 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/VesselUseFeatureRemoveRowAction.java @@ -0,0 +1,27 @@ +package fr.ifremer.tutti.ui.swing.content.operation.fishing.actions; + +import fr.ifremer.tutti.ui.swing.content.operation.fishing.VesselUseFeatureTabUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class VesselUseFeatureRemoveRowAction extends SimpleActionSupport<VesselUseFeatureTabUI> { + + private static final long serialVersionUID = 1L; + + public VesselUseFeatureRemoveRowAction(VesselUseFeatureTabUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(VesselUseFeatureTabUI ui) { + + ui.getHandler().removeCaracteristic(); + + } + +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUI.css index d78c7cf..000b3a3 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUI.css @@ -81,7 +81,7 @@ JTextField { text: "tutti.editProgram.action.saveProgram"; toolTipText: "tutti.editProgram.action.saveProgram.tip"; i18nMnemonic: "tutti.editProgram.action.saveProgram.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SaveProgramAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.program.actions.SaveProgramAction.class}; enabled: {model.isModify() && model.isValid()}; _help: {"tutti.editProgram.action.saveProgram.help"}; } @@ -91,7 +91,7 @@ JTextField { text: "tutti.editProgram.action.resetProgram"; toolTipText: "tutti.editProgram.action.resetProgram.tip"; i18nMnemonic: "tutti.editProgram.action.resetProgram.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ResetProgramAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.program.actions.ResetProgramAction.class}; enabled: {model.isModify() && !model.isCreate()}; _help: {"tutti.editProgram.action.reset.help"}; } @@ -101,6 +101,6 @@ JTextField { text: "tutti.editProgram.action.closeEditProgram"; toolTipText: "tutti.editProgram.action.closeEditProgram.tip"; i18nMnemonic: "tutti.editProgram.action.closeEditProgram.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SelectCruiseAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.OpenHomeScreenAction.class}; _help: {"tutti.editProgram.action.cancelProgram.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ResetProgramAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/actions/ResetProgramAction.java similarity index 87% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ResetProgramAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/actions/ResetProgramAction.java index 8bc221a..f2d117a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ResetProgramAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/actions/ResetProgramAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.program.actions; /* * #%L @@ -26,6 +26,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.data.Program; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.program.EditProgramUI; import fr.ifremer.tutti.ui.swing.content.program.EditProgramUIHandler; import fr.ifremer.tutti.ui.swing.content.program.EditProgramUIModel; @@ -38,7 +39,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit - chemit@codelutin.com * @since 3.6 */ -public class ResetProgramAction extends AbstractTuttiAction<EditProgramUIModel, EditProgramUI, EditProgramUIHandler> { +public class ResetProgramAction extends LongActionSupport<EditProgramUIModel, EditProgramUI, EditProgramUIHandler> { public ResetProgramAction(EditProgramUIHandler handler) { super(handler, true); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveProgramAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/actions/SaveProgramAction.java similarity index 90% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveProgramAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/actions/SaveProgramAction.java index 672d3e4..94ccc9d 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveProgramAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/actions/SaveProgramAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.program.actions; /* * #%L @@ -26,6 +26,7 @@ import fr.ifremer.tutti.persistence.entities.TuttiEntities; 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.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.program.EditProgramUI; import fr.ifremer.tutti.ui.swing.content.program.EditProgramUIHandler; import fr.ifremer.tutti.ui.swing.content.program.EditProgramUIModel; @@ -37,7 +38,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class SaveProgramAction extends AbstractTuttiAction<EditProgramUIModel, EditProgramUI, EditProgramUIHandler> { +public class SaveProgramAction extends LongActionSupport<EditProgramUIModel, EditProgramUI, EditProgramUIHandler> { public SaveProgramAction(EditProgramUIHandler handler) { super(handler, true); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.css index 36179a1..4d2e5a1 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.css @@ -86,7 +86,7 @@ JTextField { actionIcon: add; toolTipText: "tutti.editProtocol.action.addCaracteristicMapping.tip"; i18nMnemonic: "tutti.editProtocol.action.addCaracteristicMapping.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.AddCaracteristicMappingAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.AddCaracteristicMappingAction.class}; enabled: { caracteristicMappingComboBox.getSelectedItem() != null }; _help: {"tutti.editProtocol.action.addCaracteristicMapping.help"}; } @@ -164,7 +164,7 @@ JTextField { toolTipText: "tutti.editProtocol.action.saveProtocol.tip"; i18nMnemonic: "tutti.editProtocol.action.saveProtocol.mnemonic"; enabled: {model.isModify() && model.isValid()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SaveProtocolAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.SaveProtocolAction.class}; _help: {"tutti.editProtocol.action.saveProtocol.help"}; } @@ -173,7 +173,7 @@ JTextField { text: "tutti.editProtocol.action.closeEditProtocol"; toolTipText: "tutti.editProtocol.action.closeEditProtocol.tip"; i18nMnemonic: "tutti.editProtocol.action.closeEditProtocol.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SelectCruiseAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.OpenHomeScreenAction.class}; _help: {"tutti.editProtocol.action.closeEditProtocol.help"}; } @@ -181,7 +181,7 @@ JTextField { text: "tutti.editProtocol.action.selectOtherSpecies"; toolTipText: "tutti.editProtocol.action.selectOtherSpecies.tip"; i18nMnemonic: "tutti.editProtocol.action.selectOtherSpecies.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SelectOtherSpeciesAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.SelectOtherSpeciesAction.class}; _help: {"tutti.editProtocol.action.selectOtherSpecies.help"}; } @@ -189,7 +189,7 @@ JTextField { actionIcon: add; toolTipText: "tutti.editProtocol.action.addSpeciesProtocol.tip"; i18nMnemonic: "tutti.editProtocol.action.addSpeciesProtocol.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.AddSpeciesProtocolAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.AddSpeciesProtocolAction.class}; enabled: {handler.isSpeciesSelected(speciesComboBox.getSelectedItem())}; _help: {"tutti.editProtocol.action.addSpeciesProtocol.help"}; } @@ -199,7 +199,7 @@ JTextField { text: "tutti.editProtocol.action.removeSpeciesProtocol"; toolTipText: "tutti.editProtocol.action.removeSpeciesProtocol.tip"; i18nMnemonic: "tutti.editProtocol.action.removeSpeciesProtocol.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.RemoveSpeciesProtocolAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.RemoveSpeciesProtocolAction.class}; enabled: {model.isRemoveSpeciesEnabled()}; _help: {"tutti.editProtocol.action.removeSpeciesProtocol.help"}; } @@ -209,7 +209,7 @@ JTextField { text: "tutti.editProtocol.action.importProtocolSpecies"; toolTipText: "tutti.editProtocol.action.importProtocolSpecies.tip"; i18nMnemonic: "tutti.editProtocol.action.importProtocolSpecies.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportProtocolSpeciesAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.ImportProtocolSpeciesAction.class}; _help: {"tutti.editProtocol.action.importProtocolSpecies.help"}; } @@ -218,7 +218,7 @@ JTextField { text: "tutti.editProtocol.action.exportProtocolSpecies"; toolTipText: "tutti.editProtocol.action.exportProtocolSpecies.tip"; i18nMnemonic: "tutti.editProtocol.action.exportProtocolSpecies.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportProtocolSpeciesAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.ExportProtocolSpeciesAction.class}; _help: {"tutti.editProtocol.action.exportProtocolSpecies.help"}; } @@ -227,7 +227,7 @@ JTextField { text: "tutti.editProtocol.action.exportPupitri"; toolTipText: "tutti.editProtocol.action.exportPupitri.tip"; i18nMnemonic: "tutti.editProtocol.action.exportPupitri.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportPupitriAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.ExportPupitriAction.class}; _help: {"tutti.editProtocol.action.exportPupitri.help"}; } @@ -235,7 +235,7 @@ JTextField { text: "tutti.editProtocol.action.selectOtherBenthos"; toolTipText: "tutti.editProtocol.action.selectOtherBenthos.tip"; i18nMnemonic: "tutti.editProtocol.action.selectOtherBenthos.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SelectOtherBenthosAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.SelectOtherBenthosAction.class}; _help: {"tutti.editProtocol.action.selectOtherBenthos.help"}; } @@ -243,7 +243,7 @@ JTextField { actionIcon: add; toolTipText: "tutti.editProtocol.action.addBenthosProtocol.tip"; i18nMnemonic: "tutti.editProtocol.action.addBenthosProtocol.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.AddBenthosProtocolAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.AddBenthosProtocolAction.class}; enabled: {handler.isSpeciesSelected(benthosComboBox.getSelectedItem())}; _help: {"tutti.editProtocol.action.addBenthosProtocol.help"}; } @@ -253,7 +253,7 @@ JTextField { text: "tutti.editProtocol.action.removeBenthosProtocol"; toolTipText: "tutti.editProtocol.action.removeBenthosProtocol.tip"; i18nMnemonic: "tutti.editProtocol.action.removeBenthosProtocol.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.RemoveBenthosProtocolAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.RemoveBenthosProtocolAction.class}; enabled: {model.isRemoveBenthosEnabled()}; _help: {"tutti.editProtocol.action.removeBenthosProtocol.help"}; } @@ -263,7 +263,7 @@ JTextField { text: "tutti.editProtocol.action.importProtocolBenthos"; toolTipText: "tutti.editProtocol.action.importProtocolBenthos.tip"; i18nMnemonic: "tutti.editProtocol.action.importProtocolBenthos.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportProtocolBenthosAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.ImportProtocolBenthosAction.class}; _help: {"tutti.editProtocol.action.importProtocolBenthos.help"}; } @@ -272,7 +272,7 @@ JTextField { text: "tutti.editProtocol.action.exportProtocolBenthos"; toolTipText: "tutti.editProtocol.action.exportProtocolBenthos.tip"; i18nMnemonic: "tutti.editProtocol.action.exportProtocolBenthos.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportProtocolBenthosAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.ExportProtocolBenthosAction.class}; _help: {"tutti.editProtocol.action.exportProtocolBenthos.help"}; } @@ -281,7 +281,7 @@ JTextField { text: "tutti.editProtocol.action.importProtocolCaracteristic"; toolTipText: "tutti.editProtocol.action.importProtocolCaracteristic.tip"; i18nMnemonic: "tutti.editProtocol.action.importProtocolCaracteristic.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportProtocolCaracteristicAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.ImportProtocolCaracteristicAction.class}; _help: {"tutti.editProtocol.action.importProtocolCaracteristic.help"}; } @@ -290,7 +290,7 @@ JTextField { text: "tutti.editProtocol.action.exportProtocolCaracteristic"; toolTipText: "tutti.editProtocol.action.exportProtocolCaracteristic.tip"; i18nMnemonic: "tutti.editProtocol.action.exportProtocolCaracteristic.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportProtocolCaracteristicAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.ExportProtocolCaracteristicAction.class}; _help: {"tutti.editProtocol.action.exportProtocolCaracteristic.tip"}; } @@ -299,7 +299,7 @@ JTextField { text: "tutti.editProtocol.action.exportProtocolAllCaracteristic"; toolTipText: "tutti.editProtocol.action.exportProtocolAllCaracteristic.tip"; i18nMnemonic: "tutti.editProtocol.action.exportProtocolAllCaracteristic.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportAllCaracteristicAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.ExportAllCaracteristicAction.class}; _help: {"tutti.editProtocol.action.exportProtocolAllCaracteristic.help"}; } @@ -308,7 +308,7 @@ JTextField { text: "tutti.editProtocol.action.importProtocolColumns"; toolTipText: "tutti.editProtocol.action.importProtocolColumns.tip"; i18nMnemonic: "tutti.editProtocol.action.importProtocolColumns.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.LoadProtocolImportColumnsAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.LoadProtocolImportColumnsAction.class}; _help: {"tutti.editProtocol.action.importProtocolColumns.help"}; } @@ -317,7 +317,7 @@ JTextField { text: "tutti.editProtocol.action.removeCaracteristicMapping"; toolTipText: "tutti.editProtocol.action.removeCaracteristicMapping.tip"; i18nMnemonic: "tutti.editProtocol.action.removeCaracteristicMapping.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.RemoveCaracteristicMappingAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.RemoveCaracteristicMappingAction.class}; enabled: {model.isRemoveCaracteristicMappingEnabled()}; _help: {"tutti.editProtocol.action.removeCaracteristicMapping.help"}; } \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java index d47e74d..9dfd3c4 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java @@ -45,13 +45,11 @@ import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.persistence.entities.referential.Speciess; import fr.ifremer.tutti.service.DecoratorService; import fr.ifremer.tutti.service.TuttiDecorator; -import fr.ifremer.tutti.ui.swing.action.CloneProtocolAction; -import fr.ifremer.tutti.ui.swing.action.EditProtocolAction; -import fr.ifremer.tutti.ui.swing.action.ImportProtocolAction; +import fr.ifremer.tutti.ui.swing.content.home.actions.CloneProtocolAction; +import fr.ifremer.tutti.ui.swing.content.home.actions.EditProtocolAction; +import fr.ifremer.tutti.ui.swing.content.home.actions.ImportProtocolAction; import fr.ifremer.tutti.ui.swing.content.operation.catches.SpeciesAbleBatchRowHelper; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; -import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUI; -import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUIModel; import jaxx.runtime.SwingUtil; import jaxx.runtime.swing.editor.bean.BeanDoubleList; import jaxx.runtime.swing.editor.bean.BeanDoubleListModel; @@ -69,7 +67,11 @@ import org.jdesktop.swingx.table.TableColumnExt; import org.nuiton.decorator.Decorator; import org.nuiton.jaxx.application.swing.util.CloseableUI; -import javax.swing.*; +import javax.swing.JComboBox; +import javax.swing.JComponent; +import javax.swing.JTabbedPane; +import javax.swing.JTable; +import javax.swing.ListSelectionModel; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import javax.swing.event.ListSelectionEvent; @@ -79,7 +81,7 @@ import javax.swing.event.TableModelListener; import javax.swing.table.DefaultTableCellRenderer; import javax.swing.table.JTableHeader; import javax.swing.table.TableColumnModel; -import java.awt.*; +import java.awt.Component; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.util.ArrayList; @@ -113,7 +115,7 @@ public class EditProtocolUIHandler extends AbstractTuttiUIHandler<EditProtocolUI return result; } - protected SelectSpeciesUI dialog; +// protected SelectSpeciesUI dialog; protected SampleCategoryModel sampleCategoryModel; @@ -587,7 +589,7 @@ public class EditProtocolUIHandler extends AbstractTuttiUIHandler<EditProtocolUI model.setVersion(TuttiProtocols.CURRENT_PROTOCOL_VERSION); - dialog = new SelectSpeciesUI(false, this.ui); +// dialog = new SelectSpeciesUI(false, this.ui); } @@ -711,12 +713,12 @@ public class EditProtocolUIHandler extends AbstractTuttiUIHandler<EditProtocolUI operationFieldMappingRows = new ArrayList<OperationFieldMappingRow>(); } Map<String, OperationFieldMappingRow> rowsByField = Maps.uniqueIndex(operationFieldMappingRows, - new Function<OperationFieldMappingRow, String>() { - @Override - public String apply(OperationFieldMappingRow operationFieldMappingRow) { - return operationFieldMappingRow.getField(); - } - }); + new Function<OperationFieldMappingRow, String>() { + @Override + public String apply(OperationFieldMappingRow operationFieldMappingRow) { + return operationFieldMappingRow.getField(); + } + }); n("tutti.editFishingOperation.field.gearShootingStartDay"); n("tutti.editFishingOperation.field.gearShootingStartTime"); @@ -802,16 +804,16 @@ public class EditProtocolUIHandler extends AbstractTuttiUIHandler<EditProtocolUI } } - //FIXME tchemit-2014-01-09 Bad place for this! - public Species openSelectOtherSpeciesDialog(String title, List<Species> species) { - SelectSpeciesUIModel model = dialog.getModel(); - model.setSpecies(species); - model.setSelectedSpecies(null); - - openDialog(dialog, title, new Dimension(400, 130)); - - return model.getSelectedSpecies(); - } +// //FIXME tchemit-2014-01-09 Bad place for this! +// public Species openSelectOtherSpeciesDialog(String title, List<Species> species) { +// SelectSpeciesUIModel model = dialog.getModel(); +// model.setSpecies(species); +// model.setSelectedSpecies(null); +// +// openDialog(dialog, title, new Dimension(400, 130)); +// +// return model.getSelectedSpecies(); +// } public EditProtocolCaracteristicsRowModel createEditProtocolCaracteristicsRowModel() { EditProtocolCaracteristicsRowModel newRow = new EditProtocolCaracteristicsRowModel(getModel().getCaracteristics()); @@ -1065,7 +1067,7 @@ public class EditProtocolUIHandler extends AbstractTuttiUIHandler<EditProtocolUI EditProtocolUIModel model = getModel(); String importColumn = row.getImportColumn(); return row.getType() != null && - (importColumn == null || model.numberOfRows(importColumn) < 2); + (importColumn == null || model.numberOfRows(importColumn) < 2); } protected void populateImportColumnTableEditors() { diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AddBenthosProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddBenthosProtocolAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AddBenthosProtocolAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddBenthosProtocolAction.java index c4726d2..fe6cd4b 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AddBenthosProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddBenthosProtocolAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.referential.Species; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesTableModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; @@ -42,7 +43,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class AddBenthosProtocolAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class AddBenthosProtocolAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { public AddBenthosProtocolAction(EditProtocolUIHandler handler) { super(handler, false); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AddCaracteristicMappingAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddCaracteristicMappingAction.java similarity index 92% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AddCaracteristicMappingAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddCaracteristicMappingAction.java index 2ab5887..123c53a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AddCaracteristicMappingAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddCaracteristicMappingAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolCaracteristicsRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolCaracteristicsTableModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; @@ -40,7 +41,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class AddCaracteristicMappingAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class AddCaracteristicMappingAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { public AddCaracteristicMappingAction(EditProtocolUIHandler handler) { super(handler, false); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AddSpeciesProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddSpeciesProtocolAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AddSpeciesProtocolAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddSpeciesProtocolAction.java index 0ac04f1..d68a12b 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AddSpeciesProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddSpeciesProtocolAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.referential.Species; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesTableModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; @@ -42,7 +43,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class AddSpeciesProtocolAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class AddSpeciesProtocolAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { public AddSpeciesProtocolAction(EditProtocolUIHandler handler) { super(handler, false); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportAllCaracteristicAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportAllCaracteristicAction.java similarity index 91% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportAllCaracteristicAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportAllCaracteristicAction.java index ee8e97c..5bd8bed 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportAllCaracteristicAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportAllCaracteristicAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.service.protocol.ProtocolImportExportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIModel; @@ -40,7 +41,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ExportAllCaracteristicAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class ExportAllCaracteristicAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportProtocolBenthosAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolBenthosAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportProtocolBenthosAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolBenthosAction.java index 09f1b52..6aa0f73 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportProtocolBenthosAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolBenthosAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.base.Preconditions; import com.google.common.collect.Lists; import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocol; import fr.ifremer.tutti.service.protocol.ProtocolImportExportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; @@ -44,7 +45,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.2 */ -public class ExportProtocolBenthosAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class ExportProtocolBenthosAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportProtocolCaracteristicAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolCaracteristicAction.java similarity index 92% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportProtocolCaracteristicAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolCaracteristicAction.java index 7fe4311..e1c4782 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportProtocolCaracteristicAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolCaracteristicAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.service.protocol.ProtocolImportExportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIModel; @@ -41,7 +42,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ExportProtocolCaracteristicAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class ExportProtocolCaracteristicAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportProtocolSpeciesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolSpeciesAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportProtocolSpeciesAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolSpeciesAction.java index 64ae17b..bd2a8f9 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportProtocolSpeciesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolSpeciesAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.base.Preconditions; import com.google.common.collect.Lists; import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocol; import fr.ifremer.tutti.service.protocol.ProtocolImportExportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; @@ -44,7 +45,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ExportProtocolSpeciesAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class ExportProtocolSpeciesAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportPupitriAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportPupitriAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportPupitriAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportPupitriAction.java index 4910e9b..ca2e5f8 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportPupitriAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportPupitriAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.base.Preconditions; import com.google.common.collect.Lists; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.service.pupitri.PupitriExportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; @@ -44,7 +45,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ExportPupitriAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class ExportPupitriAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportProtocolBenthosAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolBenthosAction.java similarity index 95% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportProtocolBenthosAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolBenthosAction.java index 24c8d89..a7288ef 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportProtocolBenthosAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolBenthosAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -28,6 +28,7 @@ import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.service.DecoratorService; import fr.ifremer.tutti.service.protocol.ProtocolImportExportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; @@ -46,7 +47,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ImportProtocolBenthosAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class ImportProtocolBenthosAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportProtocolCaracteristicAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolCaracteristicAction.java similarity index 92% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportProtocolCaracteristicAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolCaracteristicAction.java index f55858b..d1dfdb9 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportProtocolCaracteristicAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolCaracteristicAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.service.protocol.ProtocolImportExportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIModel; @@ -41,7 +42,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ImportProtocolCaracteristicAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class ImportProtocolCaracteristicAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportProtocolSpeciesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolSpeciesAction.java similarity index 95% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportProtocolSpeciesAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolSpeciesAction.java index aa7e34e..3e21886 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportProtocolSpeciesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolSpeciesAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -28,6 +28,7 @@ import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.service.DecoratorService; import fr.ifremer.tutti.service.protocol.ProtocolImportExportService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; @@ -46,7 +47,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ImportProtocolSpeciesAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class ImportProtocolSpeciesAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/LoadProtocolImportColumnsAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/LoadProtocolImportColumnsAction.java similarity index 90% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/LoadProtocolImportColumnsAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/LoadProtocolImportColumnsAction.java index 0cabd53..5299fa0 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/LoadProtocolImportColumnsAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/LoadProtocolImportColumnsAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; * #L% */ +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIModel; @@ -42,7 +43,7 @@ import static org.nuiton.i18n.I18n.t; * @author Kevin Morin (Code Lutin) * @since 3.10 */ -public class LoadProtocolImportColumnsAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class LoadProtocolImportColumnsAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { private static final Log log = LogFactory.getLog(LoadProtocolImportColumnsAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveBenthosProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveBenthosProtocolAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveBenthosProtocolAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveBenthosProtocolAction.java index 2a31b67..49b7646 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveBenthosProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveBenthosProtocolAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -27,6 +27,7 @@ import com.google.common.collect.Lists; import com.google.common.collect.Sets; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.persistence.entities.referential.Speciess; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesTableModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; @@ -47,7 +48,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class RemoveBenthosProtocolAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class RemoveBenthosProtocolAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { /** diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveCaracteristicMappingAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveCaracteristicMappingAction.java similarity index 93% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveCaracteristicMappingAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveCaracteristicMappingAction.java index 709a242..5fa92bf 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveCaracteristicMappingAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveCaracteristicMappingAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -27,6 +27,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import com.google.common.collect.Sets; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolCaracteristicsRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolCaracteristicsTableModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; @@ -46,7 +47,7 @@ import static org.nuiton.i18n.I18n.t; * @author Kevin Morin (Code Lutin) * @since 3.10 */ -public class RemoveCaracteristicMappingAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class RemoveCaracteristicMappingAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { /** diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveSpeciesProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveSpeciesProtocolAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveSpeciesProtocolAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveSpeciesProtocolAction.java index f36adc3..28b9737 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/RemoveSpeciesProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveSpeciesProtocolAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -27,6 +27,7 @@ import com.google.common.collect.Lists; import com.google.common.collect.Sets; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.persistence.entities.referential.Speciess; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesTableModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; @@ -47,7 +48,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class RemoveSpeciesProtocolAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class RemoveSpeciesProtocolAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { /** * Set of removed species. diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SaveProtocolAction.java similarity index 95% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveProtocolAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SaveProtocolAction.java index 9a5fe6d..37e5028 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SaveProtocolAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -30,6 +30,7 @@ import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocol; import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.service.PersistenceService; import fr.ifremer.tutti.ui.swing.TuttiUIContext; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolCaracteristicsRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolOperationFieldsRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesRowModel; @@ -52,7 +53,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <kmorin@codelutin.com> * @since 1.0 */ -public class SaveProtocolAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class SaveProtocolAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { /** Logger. */ private static final Log log = LogFactory.getLog(SaveProtocolAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectOtherBenthosAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SelectOtherBenthosAction.java similarity index 85% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectOtherBenthosAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SelectOtherBenthosAction.java index a2a444d..678ad8f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectOtherBenthosAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SelectOtherBenthosAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.collect.Lists; import fr.ifremer.tutti.persistence.entities.referential.Species; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIModel; @@ -40,7 +41,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <kmorin@codelutin.com> * @since 1.1 */ -public class SelectOtherBenthosAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class SelectOtherBenthosAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { /** Logger. */ private static final Log log = @@ -60,7 +61,10 @@ public class SelectOtherBenthosAction extends AbstractTuttiAction<EditProtocolUI List<Species> species = Lists.newArrayList(model.getAllSynonyms()); - selectedSpecies = getHandler().openSelectOtherSpeciesDialog(t("tutti.selectBenthos.title"), species); + + selectedSpecies = openAddSpeciesDialog(t("tutti.selectBenthos.title"), species); +// selectedSpecies = getHandler().openSelectOtherSpeciesDialog(t("tutti.selectBenthos.title"), species); + if (log.isInfoEnabled()) { log.info("SelectedBenthos: " + selectedSpecies); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectOtherSpeciesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SelectOtherSpeciesAction.java similarity index 85% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectOtherSpeciesAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SelectOtherSpeciesAction.java index 9e6b4b3..c6def3e 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SelectOtherSpeciesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SelectOtherSpeciesAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.protocol.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.collect.Lists; import fr.ifremer.tutti.persistence.entities.referential.Species; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIModel; @@ -40,7 +41,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <kmorin@codelutin.com> * @since 1.1 */ -public class SelectOtherSpeciesAction extends AbstractTuttiAction<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { +public class SelectOtherSpeciesAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { /** Logger. */ private static final Log log = @@ -60,7 +61,8 @@ public class SelectOtherSpeciesAction extends AbstractTuttiAction<EditProtocolUI List<Species> species = Lists.newArrayList(model.getAllSynonyms()); - selectedSpecies = getHandler().openSelectOtherSpeciesDialog(t("tutti.selectSpecies.title"), species); + selectedSpecies = openAddSpeciesDialog(t("tutti.selectSpecies.title"), species); +// selectedSpecies = getHandler().openSelectOtherSpeciesDialog(t("tutti.selectSpecies.title"), species); if (log.isInfoEnabled()) { log.info("SelectedSpecies: " + selectedSpecies); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUI.css index 4e3bdac..c122a1b 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUI.css @@ -43,7 +43,7 @@ #exportSpeciesExampleButton { actionIcon: export; text: "tutti.manageTemporaryReferential.action.exportTemporarySpeciesExample"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportTemporarySpeciesExampleAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.actions.ExportTemporarySpeciesExampleAction.class}; toolTipText: "tutti.manageTemporaryReferential.action.exportTemporarySpeciesExample.tip"; _help: {"tutti.manageTemporaryReferential.action.exportTemporarySpeciesExample.help"}; } @@ -51,7 +51,7 @@ #exportExistingSpeciesButton { actionIcon: export; text: "tutti.manageTemporaryReferential.action.exportExistingTemporarySpecies"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportExistingTemporarySpeciesAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.actions.ExportExistingTemporarySpeciesAction.class}; enabled: { model.getNbTemporarySpecies() > 0 }; toolTipText: "tutti.manageTemporaryReferential.action.exportExistingTemporarySpecies.tip"; _help: {"tutti.manageTemporaryReferential.action.exportExistingTemporarySpecies.help"}; @@ -60,7 +60,7 @@ #importSpeciesButton { actionIcon: import; text: "tutti.manageTemporaryReferential.action.importTemporarySpecies"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportTemporarySpeciesAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.actions.ImportTemporarySpeciesAction.class}; toolTipText: "tutti.manageTemporaryReferential.action.importTemporarySpecies.tip"; _help: {"tutti.manageTemporaryReferential.action.importTemporarySpecies.help"}; } @@ -68,7 +68,7 @@ #replaceSpeciesButton { actionIcon: replace; text: "tutti.manageTemporaryReferential.action.replaceTemporarySpecies"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.OpenReplaceTemporarySpeciesUIAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.actions.OpenReplaceTemporarySpeciesUIAction.class}; enabled: { model.getNbTemporarySpecies() > 0 }; toolTipText: "tutti.manageTemporaryReferential.action.replaceTemporarySpecies.tip"; _help: {"tutti.manageTemporaryReferential.action.replaceTemporarySpecies.help"}; @@ -88,7 +88,7 @@ #exportVesselExampleButton { actionIcon: export; text: "tutti.manageTemporaryReferential.action.exportTemporaryVesselExample"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportTemporaryVesselExampleAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.actions.ExportTemporaryVesselExampleAction.class}; toolTipText: "tutti.manageTemporaryReferential.action.exportTemporaryVesselExample.tip"; _help: {"tutti.manageTemporaryReferential.action.exportTemporaryVesselExample.help"}; } @@ -96,7 +96,7 @@ #exportExistingVesselButton { actionIcon: export; text: "tutti.manageTemporaryReferential.action.exportExistingTemporaryVessel"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportExistingTemporaryVesselAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.actions.ExportExistingTemporaryVesselAction.class}; toolTipText: "tutti.manageTemporaryReferential.action.exportExistingTemporaryVessel.tip"; enabled: { model.getNbTemporaryVessels() > 0 }; _help: {"tutti.manageTemporaryReferential.action.exportExistingTemporaryVessel.help"}; @@ -105,7 +105,7 @@ #importVesselButton { actionIcon: import; text: "tutti.manageTemporaryReferential.action.importTemporaryVessel"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportTemporaryVesselAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.actions.ImportTemporaryVesselAction.class}; toolTipText: "tutti.manageTemporaryReferential.action.importTemporaryVessel.tip"; _help: {"tutti.manageTemporaryReferential.action.importTemporaryVessel.help"}; } @@ -113,7 +113,7 @@ #replaceVesselButton { actionIcon: replace; text: "tutti.manageTemporaryReferential.action.replaceTemporaryVessel"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.OpenReplaceTemporaryVesselUIAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.actions.OpenReplaceTemporaryVesselUIAction.class}; enabled: { model.getNbTemporaryVessels() > 0 }; toolTipText: "tutti.manageTemporaryReferential.action.replaceTemporaryVessel.tip"; _help: {"tutti.manageTemporaryReferential.action.replaceTemporaryVessel.help"}; @@ -133,7 +133,7 @@ #exportGearExampleButton { actionIcon: export; text: "tutti.manageTemporaryReferential.action.exportTemporaryGearExample"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportTemporaryGearExampleAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.actions.ExportTemporaryGearExampleAction.class}; toolTipText: "tutti.manageTemporaryReferential.action.exportTemporaryGearExample.tip"; _help: {"tutti.manageTemporaryReferential.action.exportTemporaryGearExample.help"}; } @@ -141,7 +141,7 @@ #exportExistingGearButton { actionIcon: export; text: "tutti.manageTemporaryReferential.action.exportExistingTemporaryGear"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportExistingTemporaryGearAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.actions.ExportExistingTemporaryGearAction.class}; enabled: { model.getNbTemporaryGears() > 0 }; toolTipText: "tutti.manageTemporaryReferential.action.exportExistingTemporaryGear.tip"; _help: {"tutti.manageTemporaryReferential.action.exportExistingTemporaryGear.help"}; @@ -150,7 +150,7 @@ #importGearButton { actionIcon: import; text: "tutti.manageTemporaryReferential.action.importTemporaryGear"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportTemporaryGearAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.actions.ImportTemporaryGearAction.class}; toolTipText: "tutti.manageTemporaryReferential.action.importTemporaryGear.tip"; _help: {"tutti.manageTemporaryReferential.action.importTemporaryGear.help"}; } @@ -158,7 +158,7 @@ #replaceGearButton { actionIcon: replace; text: "tutti.manageTemporaryReferential.action.replaceTemporaryGear"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.OpenReplaceTemporaryGearUIAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.actions.OpenReplaceTemporaryGearUIAction.class}; enabled: { model.getNbTemporaryGears() > 0 }; toolTipText: "tutti.manageTemporaryReferential.action.replaceTemporaryGear.tip"; _help: {"tutti.manageTemporaryReferential.action.replaceTemporaryGear.help"}; @@ -178,7 +178,7 @@ #exportExistingPersonButton { actionIcon: export; text: "tutti.manageTemporaryReferential.action.exportExistingTemporaryPerson"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportExistingTemporaryPersonAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.actions.ExportExistingTemporaryPersonAction.class}; enabled: { model.getNbTemporaryPersons() > 0 }; toolTipText: "tutti.manageTemporaryReferential.action.exportExistingTemporaryPerson.tip"; _help: {"tutti.manageTemporaryReferential.action.exportExistingTemporaryPerson.help"}; @@ -187,7 +187,7 @@ #exportPersonExampleButton { actionIcon: export; text: "tutti.manageTemporaryReferential.action.exportTemporaryPersonExample"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportTemporaryPersonExampleAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.actions.ExportTemporaryPersonExampleAction.class}; toolTipText: "tutti.manageTemporaryReferential.action.exportTemporaryPersonExample.tip"; _help: {"tutti.manageTemporaryReferential.action.exportTemporaryPersonExample.help"}; } @@ -195,7 +195,7 @@ #importPersonButton { actionIcon: import; text: "tutti.manageTemporaryReferential.action.importTemporaryPerson"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ImportTemporaryPersonAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.actions.ImportTemporaryPersonAction.class}; toolTipText: "tutti.manageTemporaryReferential.action.importTemporaryPerson.tip"; _help: {"tutti.manageTemporaryReferential.action.importTemporaryPerson.help"}; } @@ -203,7 +203,7 @@ #replacePersonButton { actionIcon: replace; text: "tutti.manageTemporaryReferential.action.replaceTemporaryPerson"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.OpenReplaceTemporaryPersonUIAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.actions.OpenReplaceTemporaryPersonUIAction.class}; enabled: { model.getNbTemporaryPersons() > 0 }; toolTipText: "tutti.manageTemporaryReferential.action.replaceTemporaryPerson.tip"; _help: {"tutti.manageTemporaryReferential.action.replaceTemporaryPerson.help"}; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractOpenReplaceTemporaryUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/AbstractOpenReplaceTemporaryUIAction.java similarity index 95% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractOpenReplaceTemporaryUIAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/AbstractOpenReplaceTemporaryUIAction.java index 9917d83..4950ce7 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractOpenReplaceTemporaryUIAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/AbstractOpenReplaceTemporaryUIAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L @@ -27,6 +27,7 @@ package fr.ifremer.tutti.ui.swing.action; import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.persistence.entities.referential.TuttiReferentialEntity; import fr.ifremer.tutti.service.PersistenceService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.MainUI; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUI; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIHandler; @@ -52,7 +53,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit - chemit@codelutin.com * @since 3.6 */ -public abstract class AbstractOpenReplaceTemporaryUIAction<E extends TuttiReferentialEntity, M extends AbstractReplaceTemporaryUIModel<E>, UI extends AbstractReplaceTemporaryUI<E, M>> extends AbstractTuttiAction<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { +public abstract class AbstractOpenReplaceTemporaryUIAction<E extends TuttiReferentialEntity, M extends AbstractReplaceTemporaryUIModel<E>, UI extends AbstractReplaceTemporaryUI<E, M>> extends LongActionSupport<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportExistingTemporaryGearAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportExistingTemporaryGearAction.java similarity index 91% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportExistingTemporaryGearAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportExistingTemporaryGearAction.java index b7294ef..8859419 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportExistingTemporaryGearAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportExistingTemporaryGearAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.service.referential.ReferentialTemporaryGearService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUI; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIHandler; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIModel; @@ -40,7 +41,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ExportExistingTemporaryGearAction extends AbstractTuttiAction<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { +public class ExportExistingTemporaryGearAction extends LongActionSupport<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportExistingTemporaryPersonAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportExistingTemporaryPersonAction.java similarity index 91% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportExistingTemporaryPersonAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportExistingTemporaryPersonAction.java index eb0a26f..1f4a30f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportExistingTemporaryPersonAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportExistingTemporaryPersonAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.service.referential.ReferentialTemporaryPersonService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUI; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIHandler; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIModel; @@ -40,7 +41,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ExportExistingTemporaryPersonAction extends AbstractTuttiAction<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { +public class ExportExistingTemporaryPersonAction extends LongActionSupport<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { /** Logger. */ diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportExistingTemporarySpeciesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportExistingTemporarySpeciesAction.java similarity index 91% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportExistingTemporarySpeciesAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportExistingTemporarySpeciesAction.java index 5894d87..b776dfb 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportExistingTemporarySpeciesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportExistingTemporarySpeciesAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.service.referential.ReferentialTemporarySpeciesService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUI; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIHandler; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIModel; @@ -40,7 +41,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ExportExistingTemporarySpeciesAction extends AbstractTuttiAction<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { +public class ExportExistingTemporarySpeciesAction extends LongActionSupport<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportExistingTemporaryVesselAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportExistingTemporaryVesselAction.java similarity index 91% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportExistingTemporaryVesselAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportExistingTemporaryVesselAction.java index 9b8184c..7499e3f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportExistingTemporaryVesselAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportExistingTemporaryVesselAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.service.referential.ReferentialTemporaryVesselService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUI; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIHandler; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIModel; @@ -40,7 +41,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ExportExistingTemporaryVesselAction extends AbstractTuttiAction<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { +public class ExportExistingTemporaryVesselAction extends LongActionSupport<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportTemporaryGearExampleAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportTemporaryGearExampleAction.java similarity index 90% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportTemporaryGearExampleAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportTemporaryGearExampleAction.java index 4a094cd..115a072 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportTemporaryGearExampleAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportTemporaryGearExampleAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.service.referential.ReferentialTemporaryGearService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUI; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIHandler; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIModel; @@ -40,7 +41,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ExportTemporaryGearExampleAction extends AbstractTuttiAction<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { +public class ExportTemporaryGearExampleAction extends LongActionSupport<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportTemporaryPersonExampleAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportTemporaryPersonExampleAction.java similarity index 90% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportTemporaryPersonExampleAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportTemporaryPersonExampleAction.java index b65f11a..daf3b54 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportTemporaryPersonExampleAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportTemporaryPersonExampleAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.service.referential.ReferentialTemporaryPersonService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUI; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIHandler; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIModel; @@ -40,7 +41,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ExportTemporaryPersonExampleAction extends AbstractTuttiAction<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { +public class ExportTemporaryPersonExampleAction extends LongActionSupport<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { /** Logger. */ diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportTemporarySpeciesExampleAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportTemporarySpeciesExampleAction.java similarity index 90% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportTemporarySpeciesExampleAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportTemporarySpeciesExampleAction.java index c56eb4b..3413e57 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportTemporarySpeciesExampleAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportTemporarySpeciesExampleAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.service.referential.ReferentialTemporarySpeciesService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUI; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIHandler; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIModel; @@ -40,7 +41,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ExportTemporarySpeciesExampleAction extends AbstractTuttiAction<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { +public class ExportTemporarySpeciesExampleAction extends LongActionSupport<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportTemporaryVesselExampleAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportTemporaryVesselExampleAction.java similarity index 90% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportTemporaryVesselExampleAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportTemporaryVesselExampleAction.java index 8a32639..95e15d9 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportTemporaryVesselExampleAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ExportTemporaryVesselExampleAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L @@ -24,6 +24,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.service.referential.ReferentialTemporaryVesselService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUI; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIHandler; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIModel; @@ -40,7 +41,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ExportTemporaryVesselExampleAction extends AbstractTuttiAction<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { +public class ExportTemporaryVesselExampleAction extends LongActionSupport<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportTemporaryGearAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ImportTemporaryGearAction.java similarity index 92% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportTemporaryGearAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ImportTemporaryGearAction.java index 8a18de3..452a5d3 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportTemporaryGearAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ImportTemporaryGearAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.referential.Gear; import fr.ifremer.tutti.service.referential.ReferentialImportResult; import fr.ifremer.tutti.service.referential.ReferentialTemporaryGearService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUI; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIHandler; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIModel; @@ -42,7 +43,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ImportTemporaryGearAction extends AbstractTuttiAction<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { +public class ImportTemporaryGearAction extends LongActionSupport<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportTemporaryPersonAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ImportTemporaryPersonAction.java similarity index 92% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportTemporaryPersonAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ImportTemporaryPersonAction.java index 2768ecc..af82a0b 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportTemporaryPersonAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ImportTemporaryPersonAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.referential.Person; import fr.ifremer.tutti.service.referential.ReferentialImportResult; import fr.ifremer.tutti.service.referential.ReferentialTemporaryPersonService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUI; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIHandler; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIModel; @@ -42,7 +43,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ImportTemporaryPersonAction extends AbstractTuttiAction<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { +public class ImportTemporaryPersonAction extends LongActionSupport<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportTemporarySpeciesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ImportTemporarySpeciesAction.java similarity index 92% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportTemporarySpeciesAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ImportTemporarySpeciesAction.java index 10a4d7c..b2ccb06 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportTemporarySpeciesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ImportTemporarySpeciesAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.service.referential.ReferentialImportResult; import fr.ifremer.tutti.service.referential.ReferentialTemporarySpeciesService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUI; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIHandler; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIModel; @@ -42,7 +43,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ImportTemporarySpeciesAction extends AbstractTuttiAction<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { +public class ImportTemporarySpeciesAction extends LongActionSupport<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportTemporaryVesselAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ImportTemporaryVesselAction.java similarity index 92% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportTemporaryVesselAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ImportTemporaryVesselAction.java index d08c32d..f93a316 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportTemporaryVesselAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/ImportTemporaryVesselAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L @@ -26,6 +26,7 @@ import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.referential.Vessel; import fr.ifremer.tutti.service.referential.ReferentialImportResult; import fr.ifremer.tutti.service.referential.ReferentialTemporaryVesselService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUI; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIHandler; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUIModel; @@ -42,7 +43,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class ImportTemporaryVesselAction extends AbstractTuttiAction<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { +public class ImportTemporaryVesselAction extends LongActionSupport<ManageTemporaryReferentialUIModel, ManageTemporaryReferentialUI, ManageTemporaryReferentialUIHandler> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenReplaceTemporaryGearUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/OpenReplaceTemporaryGearUIAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenReplaceTemporaryGearUIAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/OpenReplaceTemporaryGearUIAction.java index 0f025c0..b70d8d0 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenReplaceTemporaryGearUIAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/OpenReplaceTemporaryGearUIAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenReplaceTemporaryPersonUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/OpenReplaceTemporaryPersonUIAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenReplaceTemporaryPersonUIAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/OpenReplaceTemporaryPersonUIAction.java index c999a6d..e9d518f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenReplaceTemporaryPersonUIAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/OpenReplaceTemporaryPersonUIAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenReplaceTemporarySpeciesUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/OpenReplaceTemporarySpeciesUIAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenReplaceTemporarySpeciesUIAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/OpenReplaceTemporarySpeciesUIAction.java index 6198f3f..9d22467 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenReplaceTemporarySpeciesUIAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/OpenReplaceTemporarySpeciesUIAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenReplaceTemporaryVesselUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/OpenReplaceTemporaryVesselUIAction.java similarity index 97% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenReplaceTemporaryVesselUIAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/OpenReplaceTemporaryVesselUIAction.java index 863bacf..5c2e168 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenReplaceTemporaryVesselUIAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/actions/OpenReplaceTemporaryVesselUIAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/ReplaceTemporaryGearUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/ReplaceTemporaryGearUI.css index 808d604..634e8d6 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/ReplaceTemporaryGearUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/ReplaceTemporaryGearUI.css @@ -27,5 +27,5 @@ } #replaceButton { - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ReplaceTemporaryGearAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.replace.actions.ReplaceTemporaryGearAction.class}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/ReplaceTemporaryPersonUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/ReplaceTemporaryPersonUI.css index e6ffe5f..ef98c6e 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/ReplaceTemporaryPersonUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/ReplaceTemporaryPersonUI.css @@ -27,5 +27,5 @@ } #replaceButton { - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ReplaceTemporaryPersonAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.replace.actions.ReplaceTemporaryPersonAction.class}; } \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/ReplaceTemporarySpeciesUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/ReplaceTemporarySpeciesUI.css index e0a5653..fceb6b4 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/ReplaceTemporarySpeciesUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/ReplaceTemporarySpeciesUI.css @@ -27,5 +27,5 @@ } #replaceButton { - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ReplaceTemporarySpeciesAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.replace.actions.ReplaceTemporarySpeciesAction.class}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/ReplaceTemporaryVesselUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/ReplaceTemporaryVesselUI.css index 2c1bc9c..f8603fa 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/ReplaceTemporaryVesselUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/ReplaceTemporaryVesselUI.css @@ -27,5 +27,5 @@ } #replaceButton { - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ReplaceTemporaryVesselAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.referential.replace.actions.ReplaceTemporaryVesselAction.class}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractReplaceTemporaryUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/actions/AbstractReplaceTemporaryUIAction.java similarity index 95% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractReplaceTemporaryUIAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/actions/AbstractReplaceTemporaryUIAction.java index a8e03c7..a1a212f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractReplaceTemporaryUIAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/actions/AbstractReplaceTemporaryUIAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.replace.actions; /* * #%L @@ -27,6 +27,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.referential.TuttiReferentialEntity; import fr.ifremer.tutti.service.PersistenceService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.referential.ManageTemporaryReferentialUI; import fr.ifremer.tutti.ui.swing.content.referential.replace.AbstractReplaceTemporaryUIModel; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; @@ -42,7 +43,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit - chemit@codelutin.com * @since 3.6 */ -public abstract class AbstractReplaceTemporaryUIAction<E extends TuttiReferentialEntity, M extends AbstractReplaceTemporaryUIModel<E>, UI extends TuttiUI<M, ?>, H extends AbstractTuttiUIHandler<M, UI>> extends AbstractTuttiAction<M, UI, H> { +public abstract class AbstractReplaceTemporaryUIAction<E extends TuttiReferentialEntity, M extends AbstractReplaceTemporaryUIModel<E>, UI extends TuttiUI<M, ?>, H extends AbstractTuttiUIHandler<M, UI>> extends LongActionSupport<M, UI, H> { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReplaceTemporaryGearAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/actions/ReplaceTemporaryGearAction.java similarity index 96% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReplaceTemporaryGearAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/actions/ReplaceTemporaryGearAction.java index 169d710..a4b06d5 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReplaceTemporaryGearAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/actions/ReplaceTemporaryGearAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.replace.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReplaceTemporaryPersonAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/actions/ReplaceTemporaryPersonAction.java similarity index 96% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReplaceTemporaryPersonAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/actions/ReplaceTemporaryPersonAction.java index 1750c14..0428e77 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReplaceTemporaryPersonAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/actions/ReplaceTemporaryPersonAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.replace.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReplaceTemporarySpeciesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/actions/ReplaceTemporarySpeciesAction.java similarity index 96% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReplaceTemporarySpeciesAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/actions/ReplaceTemporarySpeciesAction.java index 2034105..aeb8449 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReplaceTemporarySpeciesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/actions/ReplaceTemporarySpeciesAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.replace.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReplaceTemporaryVesselAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/actions/ReplaceTemporaryVesselAction.java similarity index 96% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReplaceTemporaryVesselAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/actions/ReplaceTemporaryVesselAction.java index 3f85eb5..6d8f22a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReplaceTemporaryVesselAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/replace/actions/ReplaceTemporaryVesselAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.referential.replace.actions; /* * #%L diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/ReportUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/ReportUI.css index 6f3fafb..b1adf05 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/ReportUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/ReportUI.css @@ -87,6 +87,7 @@ FileEditor { toolTipText: "tutti.report.action.showOutputFile.tip"; i18nMnemonic: "tutti.report.action.showOutputFile.mnemonic"; _help: {"tutti.report.action.showOutputFile.help"}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.report.actions.ShowReportAction.class}; enabled: {model.isOutputFileExists()}; } @@ -95,7 +96,7 @@ FileEditor { text: "tutti.report.action.cancel"; toolTipText: "tutti.report.action.cancel.tip"; i18nMnemonic: "tutti.report.action.cancel.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.GoToPreviousScreenAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.actions.GoToPreviousScreenAction.class}; _help: {"tutti.report.action.cancel.help"}; } @@ -104,7 +105,7 @@ FileEditor { text: "tutti.report.action.generate"; toolTipText: "tutti.report.action.generate.tip"; i18nMnemonic: "tutti.report.action.generate.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.GenerateReportAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.report.actions.GenerateReportAction.class}; enabled: {model.isValid()}; _help: {"tutti.report.action.generate.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/ReportUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/ReportUI.jaxx index 7ccab95..1914f34 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/ReportUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/ReportUI.jaxx @@ -92,8 +92,7 @@ onActionPerformed='handler.setFile(event, "outputFile")'/> <JToolBar id='outputFileActionToolbar' constraints='BorderLayout.EAST' layout='{new GridLayout()}'> - <JButton id='showOutputFileButton' - onActionPerformed='handler.showReport()'/> + <JButton id='showOutputFileButton'/> </JToolBar> </JPanel> </cell> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/GenerateReportAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/actions/GenerateReportAction.java similarity index 91% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/GenerateReportAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/actions/GenerateReportAction.java index 19db129..bd55550 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/GenerateReportAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/actions/GenerateReportAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.report.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.service.report.ReportModel; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.report.ReportUI; import fr.ifremer.tutti.ui.swing.content.report.ReportUIHandler; import fr.ifremer.tutti.ui.swing.content.report.ReportUIModel; @@ -37,7 +38,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 2.9 */ -public class GenerateReportAction extends AbstractTuttiAction<ReportUIModel, ReportUI, ReportUIHandler> { +public class GenerateReportAction extends LongActionSupport<ReportUIModel, ReportUI, ReportUIHandler> { public GenerateReportAction(ReportUIHandler handler) { super(handler, true); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/actions/ShowReportAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/actions/ShowReportAction.java new file mode 100644 index 0000000..5c13b31 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/actions/ShowReportAction.java @@ -0,0 +1,34 @@ +package fr.ifremer.tutti.ui.swing.content.report.actions; + +import com.google.common.base.Preconditions; +import fr.ifremer.tutti.ui.swing.content.report.ReportUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; + +import java.io.File; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class ShowReportAction extends SimpleActionSupport<ReportUI> { + private static final long serialVersionUID = 1L; + + public ShowReportAction(ReportUI ui) { + super(ui); + } + + + @Override + protected void onActionPerformed(ReportUI ui) { + + File file = ui.getModel().getOutputFile(); + + Preconditions.checkState(file.exists()); + + TuttiUIUtil.openLink(file.toURI()); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/ValidateCruiseUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/ValidateCruiseUI.css index 668b2ae..9d10721 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/ValidateCruiseUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/ValidateCruiseUI.css @@ -35,7 +35,7 @@ #exportButton { actionIcon: export; toolTipText: "tutti.validateCruise.navigation.action.export.all.tip"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportCruiseValidationMessagesAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.validation.actions.ExportCruiseValidationMessagesAction.class}; _help: {"tutti.validateCruise.navigation.action.export.all.help"}; } @@ -45,7 +45,7 @@ toolTipText: "tutti.validateCruise.navigation.action.readyToSynch.tip"; i18nMnemonic: "tutti.validateCruise.navigation.action.readyToSynch.mnemonic"; enabled: {model.isReadyToSynch()}; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.SaveCruiseToReadyToSynchAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.validation.actions.SaveCruiseToReadyToSynchAction.class}; _help: {"tutti.validateCruise.navigation.action.readyToSynch.help"}; } @@ -58,7 +58,7 @@ text: "tutti.validateCruise.navigation.action.export.operation"; toolTipText: "tutti.validateCruise.navigation.action.export.operation.tip"; i18nMnemonic: "tutti.validateCruise.navigation.action.export.operation.mnemonic"; - _applicationAction: {fr.ifremer.tutti.ui.swing.action.ExportOperationValidationMessagesAction.class}; + _applicationAction: {fr.ifremer.tutti.ui.swing.content.validation.actions.ExportOperationValidationMessagesAction.class}; enabled: {model.getSelectedFishingOperation() != null}; _help: {"tutti.validateCruise.navigation.action.export.operation.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/ValidateCruiseUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/ValidateCruiseUIHandler.java index f39e59b..0078647 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/ValidateCruiseUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/ValidateCruiseUIHandler.java @@ -26,8 +26,8 @@ import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.persistence.entities.data.Cruise; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; -import fr.ifremer.tutti.ui.swing.action.EditCruiseInValidationUIAction; -import fr.ifremer.tutti.ui.swing.action.EditFishingOperationInValidationUIAction; +import fr.ifremer.tutti.ui.swing.content.validation.actions.EditCruiseInValidationUIAction; +import fr.ifremer.tutti.ui.swing.content.validation.actions.EditFishingOperationInValidationUIAction; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUI; import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI; import fr.ifremer.tutti.ui.swing.content.validation.tree.CruiseTreeNode; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditCruiseInValidationUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/EditCruiseInValidationUIAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditCruiseInValidationUIAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/EditCruiseInValidationUIAction.java index 47e5e99..99ed785 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditCruiseInValidationUIAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/EditCruiseInValidationUIAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.validation.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.collect.Lists; import fr.ifremer.tutti.persistence.entities.data.Cruise; import fr.ifremer.tutti.service.catches.ValidateCruiseOperationsService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUI; import fr.ifremer.tutti.ui.swing.content.cruise.EditCruiseUIModel; import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUIModel; @@ -45,7 +46,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit - chemit@codelutin.com * @since 3.6 */ -public class EditCruiseInValidationUIAction extends AbstractTuttiAction<ValidateCruiseUIModel, ValidateCruiseUI, ValidateCruiseUIHandler> { +public class EditCruiseInValidationUIAction extends LongActionSupport<ValidateCruiseUIModel, ValidateCruiseUI, ValidateCruiseUIHandler> { /** Validation service. */ private final ValidateCruiseOperationsService validationService; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditFishingOperationInValidationUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/EditFishingOperationInValidationUIAction.java similarity index 96% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditFishingOperationInValidationUIAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/EditFishingOperationInValidationUIAction.java index 5b50724..ecd3741 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditFishingOperationInValidationUIAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/EditFishingOperationInValidationUIAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.validation.actions; /* * #%L @@ -27,6 +27,7 @@ import fr.ifremer.tutti.persistence.entities.data.CatchBatch; import fr.ifremer.tutti.persistence.entities.data.Cruise; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.catches.ValidateCruiseOperationsService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUIModel; import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; @@ -47,7 +48,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <morin@codelutin.com> * @since 1.4 */ -public class EditFishingOperationInValidationUIAction extends AbstractTuttiAction<ValidateCruiseUIModel, ValidateCruiseUI, ValidateCruiseUIHandler> { +public class EditFishingOperationInValidationUIAction extends LongActionSupport<ValidateCruiseUIModel, ValidateCruiseUI, ValidateCruiseUIHandler> { /** Validation service. */ private final ValidateCruiseOperationsService validationService; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportCruiseValidationMessagesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/ExportCruiseValidationMessagesAction.java similarity index 90% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportCruiseValidationMessagesAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/ExportCruiseValidationMessagesAction.java index eeb4505..95ad03a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportCruiseValidationMessagesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/ExportCruiseValidationMessagesAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.validation.actions; /* * #%L @@ -23,6 +23,7 @@ package fr.ifremer.tutti.ui.swing.action; */ import fr.ifremer.tutti.service.catches.ValidateCruiseOperationsService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.validation.ValidateCruiseUI; import fr.ifremer.tutti.ui.swing.content.validation.ValidateCruiseUIHandler; import fr.ifremer.tutti.ui.swing.content.validation.ValidateCruiseUIModel; @@ -35,7 +36,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <kmorin@codelutin.com> * @since 2.0.1 */ -public class ExportCruiseValidationMessagesAction extends AbstractTuttiAction<ValidateCruiseUIModel, ValidateCruiseUI, ValidateCruiseUIHandler> { +public class ExportCruiseValidationMessagesAction extends LongActionSupport<ValidateCruiseUIModel, ValidateCruiseUI, ValidateCruiseUIHandler> { protected File file; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportOperationValidationMessagesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/ExportOperationValidationMessagesAction.java similarity index 91% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportOperationValidationMessagesAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/ExportOperationValidationMessagesAction.java index a05bd56..c800d68 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportOperationValidationMessagesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/ExportOperationValidationMessagesAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.validation.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.DecoratorService; import fr.ifremer.tutti.service.catches.ValidateCruiseOperationsService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.validation.ValidateCruiseUI; import fr.ifremer.tutti.ui.swing.content.validation.ValidateCruiseUIHandler; import fr.ifremer.tutti.ui.swing.content.validation.ValidateCruiseUIModel; @@ -38,7 +39,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <kmorin@codelutin.com> * @since 2.0.1 */ -public class ExportOperationValidationMessagesAction extends AbstractTuttiAction<ValidateCruiseUIModel, ValidateCruiseUI, ValidateCruiseUIHandler> { +public class ExportOperationValidationMessagesAction extends LongActionSupport<ValidateCruiseUIModel, ValidateCruiseUI, ValidateCruiseUIHandler> { protected File file; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveCruiseToReadyToSynchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/SaveCruiseToReadyToSynchAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveCruiseToReadyToSynchAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/SaveCruiseToReadyToSynchAction.java index 52469be..d1de999 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/SaveCruiseToReadyToSynchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/SaveCruiseToReadyToSynchAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.content.validation.actions; /* * #%L @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.service.PersistenceService; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.validation.ValidateCruiseUI; import fr.ifremer.tutti.ui.swing.content.validation.ValidateCruiseUIHandler; import fr.ifremer.tutti.ui.swing.content.validation.ValidateCruiseUIModel; @@ -42,7 +43,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit <chemit@codelutin.com> * @since 3.5 */ -public class SaveCruiseToReadyToSynchAction extends AbstractTuttiAction<ValidateCruiseUIModel, ValidateCruiseUI, ValidateCruiseUIHandler> { +public class SaveCruiseToReadyToSynchAction extends LongActionSupport<ValidateCruiseUIModel, ValidateCruiseUI, ValidateCruiseUIHandler> { /** Logger. */ private static final Log log = LogFactory.getLog(SaveCruiseToReadyToSynchAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/TuttiApplicationUpdaterCallBack.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/TuttiApplicationUpdaterCallBack.java index 34b0cd8..84f5ac5 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/TuttiApplicationUpdaterCallBack.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/TuttiApplicationUpdaterCallBack.java @@ -24,7 +24,7 @@ package fr.ifremer.tutti.ui.swing.update; import com.google.common.collect.ImmutableMap; import fr.ifremer.tutti.persistence.ProgressionModel; -import fr.ifremer.tutti.ui.swing.action.AbstractTuttiAction; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.update.module.HelpModuleUpdater; import fr.ifremer.tutti.ui.swing.update.module.I18NModuleUpdater; import fr.ifremer.tutti.ui.swing.update.module.IchtyometerModuleUpdater; @@ -42,7 +42,7 @@ import fr.ifremer.tutti.ui.swing.updater.UpdateModule; */ public class TuttiApplicationUpdaterCallBack extends TuttiUpdaterCallBackSupport { - public TuttiApplicationUpdaterCallBack(String url, AbstractTuttiAction action, ProgressionModel progressionModel) { + public TuttiApplicationUpdaterCallBack(String url, LongActionSupport action, ProgressionModel progressionModel) { super(url, ImmutableMap.<UpdateModule, ModuleUpdaterSupport>builder() .put(UpdateModule.launcher, new LauncherModuleUpdater()) diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/TuttiDbUpdaterCallBack.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/TuttiDbUpdaterCallBack.java index 2ddf55d..b39fa6f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/TuttiDbUpdaterCallBack.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/TuttiDbUpdaterCallBack.java @@ -24,7 +24,7 @@ package fr.ifremer.tutti.ui.swing.update; import com.google.common.collect.ImmutableMap; import fr.ifremer.tutti.persistence.ProgressionModel; -import fr.ifremer.tutti.ui.swing.action.AbstractTuttiAction; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.update.module.DbModuleUpdater; import fr.ifremer.tutti.ui.swing.update.module.ModuleUpdaterSupport; import fr.ifremer.tutti.ui.swing.updater.UpdateModule; @@ -40,7 +40,7 @@ import static org.nuiton.i18n.I18n.t; */ public class TuttiDbUpdaterCallBack extends TuttiUpdaterCallBackSupport { - public TuttiDbUpdaterCallBack(String url, AbstractTuttiAction action, ProgressionModel progressionModel) { + public TuttiDbUpdaterCallBack(String url, LongActionSupport action, ProgressionModel progressionModel) { super(url, ImmutableMap.<UpdateModule, ModuleUpdaterSupport>of(UpdateModule.db, new DbModuleUpdater()), action, diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/TuttiReportUpdaterCallBack.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/TuttiReportUpdaterCallBack.java index b9f126d..aef0674 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/TuttiReportUpdaterCallBack.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/TuttiReportUpdaterCallBack.java @@ -24,7 +24,7 @@ package fr.ifremer.tutti.ui.swing.update; import com.google.common.collect.ImmutableMap; import fr.ifremer.tutti.persistence.ProgressionModel; -import fr.ifremer.tutti.ui.swing.action.AbstractTuttiAction; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.update.module.ModuleUpdaterSupport; import fr.ifremer.tutti.ui.swing.update.module.ReportModuleUpdater; import fr.ifremer.tutti.ui.swing.updater.UpdateModule; @@ -37,7 +37,7 @@ import fr.ifremer.tutti.ui.swing.updater.UpdateModule; */ public class TuttiReportUpdaterCallBack extends TuttiUpdaterCallBackSupport { - public TuttiReportUpdaterCallBack(String url, AbstractTuttiAction action, ProgressionModel progressionModel) { + public TuttiReportUpdaterCallBack(String url, LongActionSupport action, ProgressionModel progressionModel) { super(url, ImmutableMap.<UpdateModule, ModuleUpdaterSupport>of(UpdateModule.report, new ReportModuleUpdater()), action, diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/TuttiUpdaterCallBackSupport.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/TuttiUpdaterCallBackSupport.java index fe39de8..db24a93 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/TuttiUpdaterCallBackSupport.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/TuttiUpdaterCallBackSupport.java @@ -28,7 +28,7 @@ import com.google.common.collect.Maps; import com.google.common.collect.Sets; import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.ui.swing.TuttiUIContext; -import fr.ifremer.tutti.ui.swing.action.AbstractTuttiAction; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.update.module.ModuleUpdaterSupport; import fr.ifremer.tutti.ui.swing.updater.UpdateModule; import org.apache.commons.logging.Log; @@ -57,7 +57,7 @@ public abstract class TuttiUpdaterCallBackSupport implements ApplicationUpdaterC protected ProgressionModel progressionModel; - protected final AbstractTuttiAction action; + protected final LongActionSupport action; protected final String url; @@ -70,7 +70,7 @@ public abstract class TuttiUpdaterCallBackSupport implements ApplicationUpdaterC protected boolean applicationUpdated; - public TuttiUpdaterCallBackSupport(String url, Map<UpdateModule, ModuleUpdaterSupport> allUpdaters, AbstractTuttiAction action, + public TuttiUpdaterCallBackSupport(String url, Map<UpdateModule, ModuleUpdaterSupport> allUpdaters, LongActionSupport action, ProgressionModel progressionModel) { this.url = url; this.action = action; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateApplicationAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/actions/UpdateApplicationAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateApplicationAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/actions/UpdateApplicationAction.java index 049b055..7e59817 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateApplicationAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/actions/UpdateApplicationAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.update.actions; /* * #%L @@ -26,7 +26,8 @@ import fr.ifremer.tutti.TuttiConfiguration; import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.ui.swing.RunTutti; import fr.ifremer.tutti.ui.swing.TuttiUIContext; -import fr.ifremer.tutti.ui.swing.content.MainUI; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; +import fr.ifremer.tutti.ui.swing.content.actions.CloseApplicationAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import fr.ifremer.tutti.ui.swing.update.TuttiApplicationUpdaterCallBack; import fr.ifremer.tutti.ui.swing.update.Updates; @@ -45,7 +46,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class UpdateApplicationAction extends AbstractTuttiAction<TuttiUIContext, MainUI, MainUIHandler> { +public class UpdateApplicationAction extends AbstractMainUITuttiAction { /** Logger. */ private static final Log log = LogFactory.getLog(UpdateApplicationAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateReportAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/actions/UpdateReportAction.java similarity index 94% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateReportAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/actions/UpdateReportAction.java index 5717260..c553f9c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateReportAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/update/actions/UpdateReportAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.update.actions; /* * #%L @@ -26,7 +26,8 @@ import fr.ifremer.tutti.TuttiConfiguration; import fr.ifremer.tutti.persistence.ProgressionModel; import fr.ifremer.tutti.ui.swing.RunTutti; import fr.ifremer.tutti.ui.swing.TuttiUIContext; -import fr.ifremer.tutti.ui.swing.content.MainUI; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractMainUITuttiAction; +import fr.ifremer.tutti.ui.swing.content.actions.CloseApplicationAction; import fr.ifremer.tutti.ui.swing.content.MainUIHandler; import fr.ifremer.tutti.ui.swing.update.TuttiReportUpdaterCallBack; import fr.ifremer.tutti.ui.swing.update.Updates; @@ -44,7 +45,7 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public class UpdateReportAction extends AbstractTuttiAction<TuttiUIContext, MainUI, MainUIHandler> { +public class UpdateReportAction extends AbstractMainUITuttiAction { /** Logger. */ private static final Log log = diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java index 0326a75..fbb343e 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java @@ -43,6 +43,7 @@ import fr.ifremer.tutti.util.Weights; import jaxx.runtime.swing.JAXXWidgetUtil; import jaxx.runtime.swing.editor.cell.NumberCellEditor; import jaxx.runtime.validator.swing.SwingValidator; +import org.apache.commons.lang3.BooleanUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.jdesktop.swingx.JXTable; @@ -62,8 +63,11 @@ import org.nuiton.validator.bean.simple.SimpleBeanValidator; import javax.swing.AbstractButton; import javax.swing.Action; +import javax.swing.JCheckBox; import javax.swing.JComponent; import javax.swing.JLabel; +import javax.swing.JMenuItem; +import javax.swing.JRadioButton; import javax.swing.JTable; import javax.swing.JTextField; import javax.swing.KeyStroke; @@ -76,7 +80,6 @@ import javax.swing.table.TableColumnModel; import java.awt.Color; import java.awt.Component; import java.awt.Font; -import java.awt.event.ActionListener; import java.awt.event.KeyEvent; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; @@ -376,35 +379,36 @@ public abstract class AbstractTuttiUIHandler<M, UI extends TuttiUI<M, ?>> extend super.initButton(abstractButton); - String actionName = abstractButton.getName(); - Action action = abstractButton.getAction(); - if (action == null) { + Class actionType = (Class) abstractButton.getClientProperty("simpleAction"); + if (actionType != null) { - ActionListener[] actionListeners = abstractButton.getActionListeners(); - if (actionListeners != null && actionListeners.length > 0) { + Action action = getContext().getActionFactory().createSimpleAction(this, abstractButton, actionType); + abstractButton.setAction(action); - if (log.isDebugEnabled()) { - log.warn("AbstractButton with no action (will box it to an action): " + actionName); - } + } - action = TuttiUIUtil.addDelegateAction(abstractButton, actionName); + String actionName = abstractButton.getName(); + Action action = abstractButton.getAction(); + Boolean skipAction = (Boolean) abstractButton.getClientProperty("skipAction"); - abstractButton.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0), actionName); - abstractButton.getActionMap().put(actionName, action); + if (BooleanUtils.isNotTrue(skipAction) + && abstractButton.isFocusable() + && !(abstractButton instanceof JMenuItem) + && !(abstractButton instanceof JCheckBox) + && !(abstractButton instanceof JRadioButton)) { + if (action == null) { + throw new IllegalStateException("No action defined for button: " + actionName); } - } - - if (action != null) { if (log.isDebugEnabled()) { log.debug("Register action: " + actionName); } + abstractButton.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0), actionName); abstractButton.getActionMap().put(actionName, action); } - } protected void initNumberEditor(NumberEditor editor) { @@ -426,6 +430,18 @@ public abstract class AbstractTuttiUIHandler<M, UI extends TuttiUI<M, ?>> extend } } + public String buildReminderLabelTitle(Species species, + Iterable<SampleCategory<?>> categories, + String prefix, + String suffix) { + return buildReminderLabelTitle( + decorate(species, DecoratorService.WITH_SURVEY_CODE), + categories, + prefix, + suffix); + + } + //------------------------------------------------------------------------// //-- Internal methods --// //------------------------------------------------------------------------// @@ -495,18 +511,6 @@ public abstract class AbstractTuttiUIHandler<M, UI extends TuttiUI<M, ?>> extend ui.getHandler().onCloseUI(); } - protected String buildReminderLabelTitle(Species species, - Iterable<SampleCategory<?>> categories, - String prefix, - String suffix) { - return buildReminderLabelTitle( - decorate(species, DecoratorService.WITH_SURVEY_CODE), - categories, - prefix, - suffix); - - } - protected String buildReminderLabelTitle(String species, Iterable<SampleCategory<?>> categories, String prefix, diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/TuttiExceptionHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/TuttiExceptionHandler.java index 20dcf0f..20735b6 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/TuttiExceptionHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/TuttiExceptionHandler.java @@ -22,10 +22,11 @@ package fr.ifremer.tutti.ui.swing.util; * #L% */ -import fr.ifremer.tutti.ui.swing.action.AbstractChangeScreenAction; -import fr.ifremer.tutti.ui.swing.action.AbstractTuttiAction; +import fr.ifremer.tutti.ui.swing.content.actions.AbstractChangeScreenAction; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.nuiton.jaxx.application.ApplicationTechnicalException; import org.nuiton.jaxx.application.swing.action.ApplicationActionException; import org.nuiton.jaxx.application.swing.util.ApplicationErrorHelper; import org.nuiton.jaxx.application.swing.util.ApplicationExceptionHandler; @@ -60,7 +61,7 @@ public class TuttiExceptionHandler extends ApplicationExceptionHandler { boolean backToScreen = false; - AbstractTuttiAction action = null; + LongActionSupport action = null; if (cause instanceof ApplicationActionException) { @@ -71,7 +72,7 @@ public class TuttiExceptionHandler extends ApplicationExceptionHandler { log.debug("Action error cause:", cause); } - action = (AbstractTuttiAction) actionException.getAction(); + action = (LongActionSupport) actionException.getAction(); if (action instanceof AbstractChangeScreenAction) { backToScreen = true; @@ -85,4 +86,21 @@ public class TuttiExceptionHandler extends ApplicationExceptionHandler { action.getContext().setFallBackScreen(); } } + + @Override + protected Throwable getCause(Throwable ex) { + + + Throwable cause = super.getCause(ex); + + if (cause == null) { + + if (ex instanceof ApplicationTechnicalException) { + cause = ex; + } + } + + return cause; + + } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractTuttiAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/actions/LongActionSupport.java similarity index 95% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractTuttiAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/actions/LongActionSupport.java index f856f01..52d6ebf 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/AbstractTuttiAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/actions/LongActionSupport.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.action; +package fr.ifremer.tutti.ui.swing.util.actions; /* * #%L @@ -47,12 +47,12 @@ import java.util.List; * @author tchemit <chemit@codelutin.com> * @since 1.0 */ -public abstract class AbstractTuttiAction<M extends AbstractBean, UI extends TuttiUI<M, ?>, H extends AbstractTuttiUIHandler<M, UI>> +public abstract class LongActionSupport<M extends AbstractBean, UI extends TuttiUI<M, ?>, H extends AbstractTuttiUIHandler<M, UI>> extends AbstractApplicationAction<M, UI, H> { public abstract void doAction() throws Exception; - protected AbstractTuttiAction(H handler, boolean hideBody) { + protected LongActionSupport(H handler, boolean hideBody) { super(handler, hideBody); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/actions/SimpleActionSupport.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/actions/SimpleActionSupport.java new file mode 100644 index 0000000..fd7dce3 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/actions/SimpleActionSupport.java @@ -0,0 +1,33 @@ +package fr.ifremer.tutti.ui.swing.util.actions; + +import jaxx.runtime.JAXXObject; + +import javax.swing.AbstractAction; +import java.awt.event.ActionEvent; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public abstract class SimpleActionSupport<UI extends JAXXObject> extends AbstractAction { + + private static final long serialVersionUID = 1L; + + private final UI ui; + + protected SimpleActionSupport(UI ui) { + this.ui = ui; + } + + @Override + public final void actionPerformed(ActionEvent e) { + + onActionPerformed(ui); + + } + + protected abstract void onActionPerformed(UI ui); + +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUI.css index 05c3bad..8c44ca4 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUI.css @@ -21,47 +21,33 @@ */ #attachmentDialog { - undecorated: true; - alwaysOnTop: true; + undecorated: true; + alwaysOnTop: true; } #attachmentBody { - title: "tutti.attachmentEditor.title"; + title: "tutti.attachmentEditor.title"; } #fileLabel { - text: "tutti.attachmentEditor.field.file"; - -labelFor: { - file -} - -; + text: "tutti.attachmentEditor.field.file"; + labelFor: {file}; } #fileNameLabel { - text: "tutti.attachmentEditor.field.fileName"; - -labelFor: { - fileName -} - -; + text: "tutti.attachmentEditor.field.fileName"; + labelFor: {fileName}; } #fileCommentLabel { - text: "tutti.attachmentEditor.field.fileComment"; - -labelFor: { - fileComment -} - -; + text: "tutti.attachmentEditor.field.fileComment"; + labelFor: {fileComment}; } #addButton { - actionIcon: add; - toolTipText: "tutti.attachmentEditor.action.add.tip"; - i18nMnemonic: "tutti.attachmentEditor.action.add.mnemonic"; + actionIcon: add; + toolTipText: "tutti.attachmentEditor.action.add.tip"; + i18nMnemonic: "tutti.attachmentEditor.action.add.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.util.attachment.actions.AddAttachmentAction.class}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUI.jaxx index a375876..f211177 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUI.jaxx @@ -63,7 +63,7 @@ public void closeEditor() { <row fill='both'> <cell fill='both' weightx='1' columns='3'> - <JPanel id='attachments' layout='{new GridLayout(0, 1)}'></JPanel> + <JPanel id='attachments' layout='{new GridLayout(0, 1)}'/> </cell> </row> <row fill='both'> @@ -79,8 +79,7 @@ public void closeEditor() { <FileEditor id='file'/> </cell> <cell fill='both' rows='3'> - <JButton id='addButton' - onActionPerformed='handler.addAttachment()'/> + <JButton id='addButton'/> </cell> </row> <row fill='both'> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUIHandler.java index 8ef42ca..13b7184 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUIHandler.java @@ -23,34 +23,24 @@ package fr.ifremer.tutti.ui.swing.util.attachment; */ import fr.ifremer.tutti.persistence.entities.data.Attachment; -import fr.ifremer.tutti.persistence.entities.data.Attachments; import fr.ifremer.tutti.ui.swing.TuttiUIContext; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; -import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; -import jaxx.runtime.SwingUtil; +import fr.ifremer.tutti.ui.swing.util.attachment.actions.HideAttachmentUIAction; +import fr.ifremer.tutti.ui.swing.util.attachment.actions.ShowAttachmentUIAction; import jaxx.runtime.swing.ComponentMover; import jaxx.runtime.swing.ComponentResizer; import jaxx.runtime.validator.swing.SwingValidator; -import org.apache.commons.lang3.StringUtils; -import org.nuiton.jaxx.application.ApplicationTechnicalException; -import javax.swing.AbstractAction; import javax.swing.Action; -import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JComponent; -import javax.swing.JOptionPane; import javax.swing.JRootPane; import javax.swing.JToolBar; import javax.swing.KeyStroke; import java.awt.Component; -import java.awt.event.ActionEvent; import java.awt.event.KeyEvent; -import java.io.File; import java.util.List; -import static org.nuiton.i18n.I18n.t; - /** * @author kmorin <morin@codelutin.com> * @author tchemit <chemit@codelutin.com> @@ -63,12 +53,22 @@ public class AttachmentEditorUIHandler extends AbstractTuttiUIHandler<TuttiUICon public static final String SHOW_DIALOG_ACTION = "showDialog"; @Override + public void beforeInit(AttachmentEditorUI ui) { + super.beforeInit(ui); + ui.setContextValue(TuttiUIContext.getApplicationContext()); + + } + + @Override public void afterInit(AttachmentEditorUI ui) { +// super.initUI(ui); + + initButton(ui.getAddButton()); + ui.getFile().setDialogOwner(ui); ui.pack(); ui.setResizable(true); -// ui.setSize(800, 300); ComponentResizer cr = new ComponentResizer(); cr.registerComponent(ui); @@ -76,42 +76,14 @@ public class AttachmentEditorUIHandler extends AbstractTuttiUIHandler<TuttiUICon cm.setDragInsets(cr.getDragInsets()); cm.registerComponent(ui); - JRootPane rootPane = ui.getRootPane(); + closeAction = new HideAttachmentUIAction(ui); + openAction = new ShowAttachmentUIAction(ui); + JRootPane rootPane = ui.getRootPane(); KeyStroke shortcutClosePopup = KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0); - - rootPane.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put( - shortcutClosePopup, CLOSE_DIALOG_ACTION); - - closeAction = new AbstractAction() { - private static final long serialVersionUID = 1L; - - @Override - public void actionPerformed(ActionEvent e) { - AttachmentEditorUIHandler.this.ui.dispose(); - AttachmentEditorUIHandler.this.ui.setVisible(false); - } - }; - - //TODO Use fr.ifremer.tutti.ui.swing.util.TuttiUIUtil.prepareAction() - openAction = new AbstractAction() { - - private static final long serialVersionUID = 1L; - - @Override - public void actionPerformed(ActionEvent e) { - AttachmentEditorUIHandler.this.ui.setVisible(true); - } - }; - - ImageIcon actionIcon = SwingUtil.createActionIcon("close-dialog"); - closeAction.putValue(Action.SMALL_ICON, actionIcon); - closeAction.putValue(Action.LARGE_ICON_KEY, actionIcon); - closeAction.putValue(Action.ACTION_COMMAND_KEY, "close"); - closeAction.putValue(Action.NAME, "close"); - closeAction.putValue(Action.SHORT_DESCRIPTION, t("tutti.attachmentEditor.action.closeAttachment.tip")); - + rootPane.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(shortcutClosePopup, CLOSE_DIALOG_ACTION); rootPane.getActionMap().put(CLOSE_DIALOG_ACTION, closeAction); + rootPane.getActionMap().put(SHOW_DIALOG_ACTION, openAction); JButton closeButton = new JButton(closeAction); @@ -126,6 +98,7 @@ public class AttachmentEditorUIHandler extends AbstractTuttiUIHandler<TuttiUICon jToolBar.setBorderPainted(false); jToolBar.setFloatable(false); ui.getAttachmentBody().setRightDecoration(jToolBar); + } @Override @@ -135,6 +108,7 @@ public class AttachmentEditorUIHandler extends AbstractTuttiUIHandler<TuttiUICon @Override public void onCloseUI() { + ui.dispose(); } @Override @@ -193,84 +167,21 @@ public class AttachmentEditorUIHandler extends AbstractTuttiUIHandler<TuttiUICon ui.setLocation(x, y); } - public void addAttachment() { - AttachmentModelAware bean = ui.getBean(); - Attachment attachment = Attachments.newAttachment(); - - File file = ui.getFile().getSelectedFile(); - if (file != null) { - String name = ui.getFileName().getText(); - if (StringUtils.isEmpty(name)) { - name = file.getName(); - } - attachment.setObjectType(bean.getObjectType()); - attachment.setObjectId(bean.getObjectId()); - attachment.setName(name); - attachment.setComment(ui.getFileComment().getText()); - - attachment = getPersistenceService().createAttachment(attachment, file); - bean.addAttachment(attachment); + public void addAttachment(Attachment attachment) { - resetFields(); - addAttachment(attachment); - - ui.pack(); - } - } + AttachmentItemModel model = new AttachmentItemModel(); + model.fromEntity(attachment); - protected void addAttachment(final Attachment attachment) { - AttachmentItem item = new AttachmentItem(); - item.setAttachment(attachment); - item.setHandler(this); + ui.setContextValue(model); + AttachmentItem item = new AttachmentItem(ui); ui.getAttachments().add(item); + } - protected void resetFields() { + public void resetFields() { ui.getFile().setSelectedFilePath(null); ui.getFileName().setText(""); ui.getFileComment().setText(""); } - public void openAttachment(Attachment attachment) { - File file = getPersistenceService().getAttachmentFile(attachment.getId()); - - if (!file.exists()) { - throw new ApplicationTechnicalException(t("tutti.attachmentEditor.fileNotFound", file.getAbsolutePath())); - } - - TuttiUIUtil.browseFile(file); - } - - public void saveAttachment(Attachment attachment) { - - SaveAttachmentAction action = getContext().getActionFactory().createLogicAction( - this, SaveAttachmentAction.class); - action.setAttachment(attachment); - getContext().getActionEngine().runAction(action); - } - - public void removeAttachment(AttachmentItem attachmentItem) { - Attachment attachment = attachmentItem.getAttachment(); - boolean hackDialog = ui.isAlwaysOnTop(); - if (hackDialog) { - ui.setAlwaysOnTop(false); - } - int answer = JOptionPane.showConfirmDialog(ui, - t("tutti.attachmentEditor.deleteAttachment.message", attachment.getName()), - t("tutti.attachmentEditor.deleteAttachment.title"), - JOptionPane.YES_NO_OPTION); - if (hackDialog) { - ui.setAlwaysOnTop(true); - } - - if (answer == JOptionPane.YES_OPTION) { - AttachmentModelAware bean = ui.getBean(); - - getPersistenceService().deleteAttachment(attachment.getId()); - bean.removeAttachment(attachment); - ui.getAttachments().remove(attachmentItem); - - ui.pack(); - } - } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentItem.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentItem.css index 3dabc0f..6c7a38a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentItem.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentItem.css @@ -19,48 +19,38 @@ * <http://www.gnu.org/licenses/gpl-3.0.html>. * #L% */ -#attachmentPanel { - -toolTipText: { - attachment != null ? getAttachment() . getComment() : null -} -; +#attachmentPanel { + toolTipText: {model.getComment()}; } #attachmentNameLabel { - -text: { - attachment != null ? getAttachment() . getName() : null -} - -; -toolTipText: { - attachment != null ? getAttachment() . getComment() : null -} - -; + text: {model.getName()}; + toolTipText: {model.getComment()}; } #toolbar { - borderPainted: false; - floatable: false; + borderPainted: false; + floatable: false; } #openAttachmentButton { - actionIcon: "open-file"; - toolTipText: "tutti.attachmentEditor.action.open.tip"; - i18nMnemonic: "tutti.attachmentEditor.action.open.mnemonic"; + actionIcon: "open-file"; + toolTipText: "tutti.attachmentEditor.action.open.tip"; + i18nMnemonic: "tutti.attachmentEditor.action.open.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.util.attachment.actions.OpenAttachmentAction.class}; } #saveAttachmentButton { - actionIcon: "import"; - toolTipText: "tutti.attachmentEditor.action.save.tip"; - i18nMnemonic: "tutti.attachmentEditor.action.save.mnemonic"; + actionIcon: "import"; + toolTipText: "tutti.attachmentEditor.action.save.tip"; + i18nMnemonic: "tutti.attachmentEditor.action.save.mnemonic"; + _applicationAction: {fr.ifremer.tutti.ui.swing.util.attachment.actions.SaveAttachmentAction.class}; } #removeAttachmentButton { - actionIcon: "delete"; - toolTipText: "tutti.attachmentEditor.action.remove.tip"; - i18nMnemonic: "tutti.attachmentEditor.action.remove.mnemonic"; + actionIcon: "delete"; + toolTipText: "tutti.attachmentEditor.action.remove.tip"; + i18nMnemonic: "tutti.attachmentEditor.action.remove.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.util.attachment.actions.RemoveAttachmentAction.class}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentItem.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentItem.jaxx index e900303..885d6df 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentItem.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentItem.jaxx @@ -19,35 +19,32 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> -<JPanel id='attachmentPanel' layout='{new BorderLayout()}'> +<JPanel id='attachmentPanel' layout='{new BorderLayout()}' + implements='fr.ifremer.tutti.ui.swing.util.TuttiUI<AttachmentItemModel, AttachmentItemHandler>'> <import> - fr.ifremer.tutti.persistence.entities.data.Attachment + fr.ifremer.tutti.ui.swing.TuttiUIContext + fr.ifremer.tutti.ui.swing.util.TuttiUIUtil + static org.nuiton.i18n.I18n.t static jaxx.runtime.JAXXUtil.getStringValue </import> - <Attachment id='attachment' javaBean='null'/> - - <AttachmentEditorUIHandler id='handler' javaBean='null'/> + <AttachmentItemModel id='model' initializer="getContextValue(AttachmentItemModel.class)"/> <script><![CDATA[ -public AttachmentItem(Attachment attachment, AttachmentEditorUIHandler handler) { - this.attachment = attachment; - this.handler = handler; +public AttachmentItem(AttachmentEditorUI parentUI) { + JAXXUtil.initContext(this, parentUI); + TuttiUIUtil.setApplicationContext(this, parentUI.getModel()); } - ]]></script> <JLabel id='attachmentNameLabel' constraints='BorderLayout.CENTER'/> <JToolBar id='toolbar' constraints='BorderLayout.EAST'> - <JButton id='openAttachmentButton' - onActionPerformed='handler.openAttachment(attachment)'/> - <JButton id='saveAttachmentButton' - onActionPerformed='handler.saveAttachment(attachment)'/> - <JButton id='removeAttachmentButton' - onActionPerformed='handler.removeAttachment(this)'/> + <JButton id='openAttachmentButton'/> + <JButton id='saveAttachmentButton'/> + <JButton id='removeAttachmentButton'/> </JToolBar> </JPanel> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentItemHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentItemHandler.java new file mode 100644 index 0000000..4b1692f --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentItemHandler.java @@ -0,0 +1,45 @@ +package fr.ifremer.tutti.ui.swing.util.attachment; + +import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; +import jaxx.runtime.validator.swing.SwingValidator; + +import javax.swing.JComponent; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class AttachmentItemHandler extends AbstractTuttiUIHandler<AttachmentItemModel, AttachmentItem> { + + @Override + public void beforeInit(AttachmentItem ui) { + super.beforeInit(ui); + } + + @Override + public void afterInit(AttachmentItem ui) { +// initUI(ui); + + initButton(ui.getOpenAttachmentButton()); + initButton(ui.getRemoveAttachmentButton()); + initButton(ui.getSaveAttachmentButton()); + + } + + @Override + public SwingValidator<AttachmentItemModel> getValidator() { + return null; + } + + @Override + protected JComponent getComponentToFocus() { + return null; + } + + @Override + public void onCloseUI() { + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentItemModel.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentItemModel.java new file mode 100644 index 0000000..a3a60af --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentItemModel.java @@ -0,0 +1,71 @@ +package fr.ifremer.tutti.ui.swing.util.attachment; + +import fr.ifremer.adagio.core.dao.referential.ObjectTypeCode; +import fr.ifremer.tutti.persistence.entities.data.Attachment; +import fr.ifremer.tutti.persistence.entities.data.AttachmentBean; +import fr.ifremer.tutti.persistence.entities.data.Attachments; +import fr.ifremer.tutti.ui.swing.util.AbstractTuttiBeanUIModel; +import org.nuiton.util.beans.Binder; +import org.nuiton.util.beans.BinderFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class AttachmentItemModel extends AbstractTuttiBeanUIModel<Attachment, AttachmentItemModel> { + + private static final long serialVersionUID = 1L; + + private final Attachment editObject = new AttachmentBean(); + + protected static Binder<AttachmentItemModel, Attachment> toBeanBinder = + BinderFactory.newBinder(AttachmentItemModel.class, + Attachment.class); + + protected static Binder<Attachment, AttachmentItemModel> fromBeanBinder = + BinderFactory.newBinder(Attachment.class, AttachmentItemModel.class); + + public AttachmentItemModel() { + super(fromBeanBinder, toBeanBinder); + } + + @Override + protected Attachment newEntity() { + return Attachments.newAttachment(); + } + + public String getName() { + return editObject.getName(); + } + + public void setName(String name) { + editObject.setName(name); + } + + public Integer getObjectId() { + return editObject.getObjectId(); + } + + public void setObjectId(Integer objectId) { + editObject.setObjectId(objectId); + } + + public String getComment() { + return editObject.getComment(); + } + + public void setComment(String comment) { + editObject.setComment(comment); + } + + public ObjectTypeCode getObjectType() { + return editObject.getObjectType(); + } + + public void setObjectType(ObjectTypeCode objectType) { + editObject.setObjectType(objectType); + } + +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/AddAttachmentAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/AddAttachmentAction.java new file mode 100644 index 0000000..3033821 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/AddAttachmentAction.java @@ -0,0 +1,68 @@ +package fr.ifremer.tutti.ui.swing.util.attachment.actions; + +import fr.ifremer.tutti.persistence.entities.data.Attachment; +import fr.ifremer.tutti.persistence.entities.data.Attachments; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentEditorUI; +import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentEditorUIHandler; +import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentModelAware; +import org.apache.commons.lang3.StringUtils; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import java.io.File; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class AddAttachmentAction extends SimpleActionSupport<AttachmentEditorUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(AddAttachmentAction.class); + + private static final long serialVersionUID = 1L; + + public AddAttachmentAction(AttachmentEditorUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(AttachmentEditorUI ui) { + + File file = ui.getFile().getSelectedFile(); + if (file != null) { + String name = ui.getFileName().getText(); + if (StringUtils.isEmpty(name)) { + name = file.getName(); + } + + if (log.isInfoEnabled()) { + log.info("Add attachment: " + name); + } + + AttachmentModelAware bean = ui.getBean(); + Attachment attachment = Attachments.newAttachment(); + + attachment.setObjectType(bean.getObjectType()); + attachment.setObjectId(bean.getObjectId()); + attachment.setName(name); + attachment.setComment(ui.getFileComment().getText()); + + AttachmentEditorUIHandler handler = ui.getHandler(); + + attachment = handler.getPersistenceService().createAttachment(attachment, file); + bean.addAttachment(attachment); + + handler.resetFields(); + handler.addAttachment(attachment); + + ui.pack(); + + } + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/HideAttachmentUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/HideAttachmentUIAction.java new file mode 100644 index 0000000..e1c7027 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/HideAttachmentUIAction.java @@ -0,0 +1,39 @@ +package fr.ifremer.tutti.ui.swing.util.attachment.actions; + +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentEditorUI; +import jaxx.runtime.SwingUtil; + +import javax.swing.Action; +import javax.swing.ImageIcon; + +import static org.nuiton.i18n.I18n.t; + +/** + * Created on 3/9/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class HideAttachmentUIAction extends SimpleActionSupport<AttachmentEditorUI> { + + private static final long serialVersionUID = 1L; + + public HideAttachmentUIAction(AttachmentEditorUI ui) { + super(ui); + ImageIcon actionIcon = SwingUtil.createActionIcon("close-dialog"); + putValue(Action.SMALL_ICON, actionIcon); + putValue(Action.LARGE_ICON_KEY, actionIcon); + putValue(Action.ACTION_COMMAND_KEY, "close"); + putValue(Action.NAME, "close"); + putValue(Action.SHORT_DESCRIPTION, t("tutti.attachmentEditor.action.closeAttachment.tip")); + } + + @Override + protected void onActionPerformed(AttachmentEditorUI ui) { + + ui.setVisible(false); + ui.getHandler().onCloseUI(); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/OpenAttachmentAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/OpenAttachmentAction.java new file mode 100644 index 0000000..70edfec --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/OpenAttachmentAction.java @@ -0,0 +1,50 @@ +package fr.ifremer.tutti.ui.swing.util.attachment.actions; + +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; +import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentItem; +import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentItemModel; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.nuiton.jaxx.application.ApplicationTechnicalException; + +import java.io.File; + +import static org.nuiton.i18n.I18n.t; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class OpenAttachmentAction extends SimpleActionSupport<AttachmentItem> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(OpenAttachmentAction.class); + + private static final long serialVersionUID = 1L; + + public OpenAttachmentAction(AttachmentItem ui) { + super(ui); + } + + @Override + protected void onActionPerformed(AttachmentItem ui) { + + AttachmentItemModel model = ui.getModel(); + + File file = ui.getHandler().getPersistenceService().getAttachmentFile(model.getId()); + + if (!file.exists()) { + throw new ApplicationTechnicalException(t("tutti.attachmentEditor.fileNotFound", file.getAbsolutePath())); + } + + if (log.isInfoEnabled()) { + log.info("Open attachment: " + file); + } + TuttiUIUtil.browseFile(file); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/RemoveAttachmentAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/RemoveAttachmentAction.java new file mode 100644 index 0000000..ef0b826 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/RemoveAttachmentAction.java @@ -0,0 +1,66 @@ +package fr.ifremer.tutti.ui.swing.util.attachment.actions; + +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentEditorUI; +import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentItem; +import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentItemModel; +import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentModelAware; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import javax.swing.JOptionPane; + +import static org.nuiton.i18n.I18n.t; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class RemoveAttachmentAction extends SimpleActionSupport<AttachmentItem> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(RemoveAttachmentAction.class); + + private static final long serialVersionUID = 1L; + + public RemoveAttachmentAction(AttachmentItem ui) { + super(ui); + } + + @Override + protected void onActionPerformed(AttachmentItem ui) { + + AttachmentEditorUI upperUI = ui.getParentContainer(AttachmentEditorUI.class); + + AttachmentItemModel model = ui.getModel(); + boolean hackDialog = upperUI.isAlwaysOnTop(); + if (hackDialog) { + upperUI.setAlwaysOnTop(false); + } + int answer = JOptionPane.showConfirmDialog(upperUI, + t("tutti.attachmentEditor.deleteAttachment.message", model.getName()), + t("tutti.attachmentEditor.deleteAttachment.title"), + JOptionPane.YES_NO_OPTION); + if (hackDialog) { + upperUI.setAlwaysOnTop(true); + } + + if (answer == JOptionPane.YES_OPTION) { + AttachmentModelAware bean = upperUI.getBean(); + + if (log.isInfoEnabled()) { + log.info("Remove attachment: " + model.getName()); + } + + ui.getHandler().getPersistenceService().deleteAttachment(model.getId()); + bean.removeAttachment(model.toEntity()); + upperUI.getAttachments().remove(ui); + + upperUI.pack(); + } + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/SaveAttachmentAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/SaveAttachmentAction.java similarity index 69% rename from tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/SaveAttachmentAction.java rename to tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/SaveAttachmentAction.java index e461353..a7f8216 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/SaveAttachmentAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/SaveAttachmentAction.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.util.attachment; +package fr.ifremer.tutti.ui.swing.util.attachment.actions; /* * #%L @@ -22,9 +22,11 @@ package fr.ifremer.tutti.ui.swing.util.attachment; * #L% */ -import fr.ifremer.tutti.persistence.entities.data.Attachment; -import fr.ifremer.tutti.ui.swing.TuttiUIContext; -import fr.ifremer.tutti.ui.swing.action.AbstractTuttiAction; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; +import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentEditorUI; +import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentItem; +import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentItemHandler; +import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentItemModel; import org.nuiton.jaxx.application.ApplicationIOUtil; import java.io.File; @@ -37,27 +39,27 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 2.4 */ -public class SaveAttachmentAction extends AbstractTuttiAction<TuttiUIContext, AttachmentEditorUI, AttachmentEditorUIHandler> { - - private Attachment attachment; - - public SaveAttachmentAction(AttachmentEditorUIHandler handler) { - super(handler, false); - } +public class SaveAttachmentAction extends LongActionSupport<AttachmentItemModel, AttachmentItem, AttachmentItemHandler> { protected File file; protected File attachmentFile; + public SaveAttachmentAction(AttachmentItemHandler handler) { + super(handler, false); + } + @Override public boolean prepareAction() throws Exception { boolean doAction = super.prepareAction(); if (doAction) { - attachmentFile = getContext().getPersistenceService().getAttachmentFile(attachment.getId()); + AttachmentItemModel model = getModel(); + + attachmentFile = getContext().getPersistenceService().getAttachmentFile(model.getId()); file = saveFile( - ApplicationIOUtil.getBaseName(attachment.getName()), + ApplicationIOUtil.getBaseName(model.getName()), ApplicationIOUtil.getExtension(attachmentFile.getName()), t("tutti.attachmentEditor.saveAttachment.title"), t("tutti.attachmentEditor.saveAttachment.button")); @@ -69,11 +71,11 @@ public class SaveAttachmentAction extends AbstractTuttiAction<TuttiUIContext, At @Override public void doAction() throws Exception { - AttachmentEditorUI ui = getUI(); + AttachmentEditorUI upperUI = getUI().getParentContainer(AttachmentEditorUI.class); - boolean hackDialog = ui.isAlwaysOnTop(); + boolean hackDialog = upperUI.isAlwaysOnTop(); if (hackDialog) { - ui.setAlwaysOnTop(false); + upperUI.setAlwaysOnTop(false); } try { @@ -84,20 +86,15 @@ public class SaveAttachmentAction extends AbstractTuttiAction<TuttiUIContext, At } finally { if (hackDialog) { - ui.setAlwaysOnTop(true); + upperUI.setAlwaysOnTop(true); } } } - public void setAttachment(Attachment attachment) { - this.attachment = attachment; - } - @Override public void releaseAction() { super.releaseAction(); attachmentFile = null; - attachment = null; file = null; } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/ShowAttachmentUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/ShowAttachmentUIAction.java new file mode 100644 index 0000000..5325b3c --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/ShowAttachmentUIAction.java @@ -0,0 +1,26 @@ +package fr.ifremer.tutti.ui.swing.util.attachment.actions; + +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentEditorUI; + +/** + * Created on 3/9/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class ShowAttachmentUIAction extends SimpleActionSupport<AttachmentEditorUI>{ + + private static final long serialVersionUID = 1L; + + public ShowAttachmentUIAction(AttachmentEditorUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(AttachmentEditorUI ui) { + + ui.setVisible(true); + + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/AuthenticationInfo.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/AuthenticationInfo.java index b6c5598..a9a68b3 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/AuthenticationInfo.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/AuthenticationInfo.java @@ -38,7 +38,7 @@ public class AuthenticationInfo implements Serializable { protected final char[] password; - public AuthenticationInfo(String login, char[] password) { + public AuthenticationInfo(String login, char... password) { this.login = login; this.password = password; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/LoginUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/LoginUI.css index 3e3b9cb..3ed44c4 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/LoginUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/LoginUI.css @@ -21,44 +21,36 @@ */ #loginDialog { - modal: true; - title: "tutti.login.title"; + modal: true; + title: "tutti.login.title"; } #infoMessage { - actionIcon: info; + actionIcon: info; } #loginLabel { - text: "tutti.login.field.login"; - -labelFor: { - loginField -} - -; + text: "tutti.login.field.login"; + labelFor: { loginField } ; } #passwordLabel { - text: "tutti.login.field.password"; - -labelFor: { - passwordField -} - -; + text: "tutti.login.field.password"; + labelFor: {passwordField}; } #cancelButton { - actionIcon: cancel; - text: "tutti.common.cancel"; - toolTipText: "tutti.common.cancel"; - i18nMnemonic: "tutti.common.cancel.mnemonic"; + actionIcon: cancel; + text: "tutti.common.cancel"; + toolTipText: "tutti.common.cancel"; + i18nMnemonic: "tutti.common.cancel.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.util.auth.actions.LoginCancelAction.class}; } #acceptButton { - actionIcon: accept; - text: "tutti.common.validate"; - toolTipText: "tutti.common.validate"; - i18nMnemonic: "tutti.common.validate.mnemonic"; + actionIcon: accept; + text: "tutti.common.validate"; + toolTipText: "tutti.common.validate"; + i18nMnemonic: "tutti.common.validate.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.util.auth.actions.LoginAcceptAction.class}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/LoginUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/LoginUI.jaxx index d5a0959..bbfb4c3 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/LoginUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/LoginUI.jaxx @@ -70,8 +70,8 @@ public AuthenticationInfo getAuthenticationInfo() { return handler.getAuthentica <row> <cell columns='2'> <JPanel layout='{new GridLayout(1,0)}'> - <JButton id='cancelButton' onActionPerformed='handler.cancel()'/> - <JButton id='acceptButton' onActionPerformed='handler.accept()'/> + <JButton id='cancelButton'/> + <JButton id='acceptButton'/> </JPanel> </cell> </row> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/LoginUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/LoginUIHandler.java index 104def7..00bca41 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/LoginUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/LoginUIHandler.java @@ -55,6 +55,10 @@ public class LoginUIHandler implements UIHandler<LoginUI> { public void afterInit(LoginUI ui) { } + public LoginUI getUi() { + return ui; + } + public void open(String url, AuthenticationInfo authenticationInfo) { ui.getInfoMessage().setText(t("tutti.login.infoMmessage", url)); @@ -69,17 +73,22 @@ public class LoginUIHandler implements UIHandler<LoginUI> { ui.setVisible(true); } - public void cancel() { - ui.dispose(); - } - - public void accept() { - authenticationInfo = new AuthenticationInfo(ui.getLoginField().getText(), - ui.getPasswordField().getPassword()); - ui.dispose(); - } +// public void cancel() { +// ui.dispose(); +// } +// +// public void accept() { +// authenticationInfo = new AuthenticationInfo(ui.getLoginField().getText(), +// ui.getPasswordField().getPassword()); +// ui.dispose(); +// } protected AuthenticationInfo getAuthenticationInfo() { return authenticationInfo; } + + public void setAuthenticationInfo(AuthenticationInfo authenticationInfo) { + this.authenticationInfo = authenticationInfo; + } + } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/actions/LoginAcceptAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/actions/LoginAcceptAction.java new file mode 100644 index 0000000..6a9347d --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/actions/LoginAcceptAction.java @@ -0,0 +1,38 @@ +package fr.ifremer.tutti.ui.swing.util.auth.actions; + +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.auth.AuthenticationInfo; +import fr.ifremer.tutti.ui.swing.util.auth.LoginUI; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class LoginAcceptAction extends SimpleActionSupport<LoginUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(LoginAcceptAction.class); + + private static final long serialVersionUID = 1L; + + public LoginAcceptAction(LoginUI handler) { + super(handler); + } + + @Override + protected void onActionPerformed(LoginUI ui) { + + if (log.isInfoEnabled()) { + log.info("Accept auth."); + } + + AuthenticationInfo authenticationInfo = new AuthenticationInfo(ui.getLoginField().getText(), ui.getPasswordField().getPassword()); + ui.getHandler().setAuthenticationInfo(authenticationInfo); + ui.dispose(); + + } +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/actions/LoginCancelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/actions/LoginCancelAction.java new file mode 100644 index 0000000..5f6cbbf --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/auth/actions/LoginCancelAction.java @@ -0,0 +1,35 @@ +package fr.ifremer.tutti.ui.swing.util.auth.actions; + +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.auth.LoginUI; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class LoginCancelAction extends SimpleActionSupport<LoginUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(LoginCancelAction.class); + + private static final long serialVersionUID = 1L; + + public LoginCancelAction(LoginUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(LoginUI ui) { + + if (log.isInfoEnabled()) { + log.info("Cancel auth."); + } + ui.dispose(); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUI.css index aa676a8..e7196bf 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUI.css @@ -19,87 +19,52 @@ * <http://www.gnu.org/licenses/gpl-3.0.html>. * #L% */ + BeanFilterableComboBox { - showReset: true; + showReset: true; } #newRowKey { - property: selectedCaracteristic; - -enabled: { - ! newRowKey . isEmpty() -} - -; + property: selectedCaracteristic; + enabled: {!newRowKey.isEmpty()}; } #addRow { - actionIcon: add; - -enabled: { - newRowKey . getSelectedItem() != null -} - -; + actionIcon: add; + enabled: {newRowKey.getSelectedItem() != null}; + _simpleAction: {fr.ifremer.tutti.ui.swing.util.caracteristics.actions.CaracteristicEditorAddRowAction.class}; } #caracteristicMapEditorTable { - -selectionMode: { - ListSelectionModel . SINGLE_SELECTION -} - -; -selectionBackground: { - null -} - -; -selectionForeground: { - Color . BLACK -} - -; -sortable: false - -; + selectionMode: {ListSelectionModel.SINGLE_SELECTION}; + selectionBackground: {null}; + selectionForeground: {Color.BLACK}; + sortable: false; } #removeCaracteristicMenu { - actionIcon: batch-delete; - text: "tutti.editIndividualObservationCaracteristics.action.removeCaracteristic"; - toolTipText: "tutti.editIndividualObservationCaracteristics.action.removeCaracteristic.tip"; - i18nMnemonic: "tutti.editIndividualObservationCaracteristics.action.removeCaracteristic.mnemonic"; - -enabled: { - model . isRemoveCaracteristicEnabled() -} - -; + actionIcon: batch-delete; + text: "tutti.editIndividualObservationCaracteristics.action.removeCaracteristic"; + toolTipText: "tutti.editIndividualObservationCaracteristics.action.removeCaracteristic.tip"; + i18nMnemonic: "tutti.editIndividualObservationCaracteristics.action.removeCaracteristic.mnemonic"; + enabled: {model.isRemoveCaracteristicEnabled()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.util.caracteristics.actions.CaracteristicEditorRemoveRowAction.class}; } #cancelButton { - actionIcon: cancel; - text: "tutti.editIndividualObservationCaracteristics.action.cancel"; - toolTipText: "tutti.editIndividualObservationCaracteristics.action.cancel.tip"; - i18nMnemonic: "tutti.editIndividualObservationCaracteristics.action.cancel.mnemonic"; - -_help: { -"tutti.editIndividualObservationCaracteristics.action.cancel.help" -} - -; + actionIcon: cancel; + text: "tutti.editIndividualObservationCaracteristics.action.cancel"; + toolTipText: "tutti.editIndividualObservationCaracteristics.action.cancel.tip"; + i18nMnemonic: "tutti.editIndividualObservationCaracteristics.action.cancel.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.util.caracteristics.actions.CaracteristicEditorCancelAction.class}; + _help: {"tutti.editIndividualObservationCaracteristics.action.cancel.help"}; } #saveButton { - actionIcon: save; - text: "tutti.editIndividualObservationCaracteristics.action.save"; - toolTipText: "tutti.editIndividualObservationCaracteristics.action.save.tip"; - i18nMnemonic: "tutti.editIndividualObservationCaracteristics.action.save.mnemonic"; - -_help: { -"tutti.editIndividualObservationCaracteristics.action.save.help" -} - -; + actionIcon: save; + text: "tutti.editIndividualObservationCaracteristics.action.save"; + toolTipText: "tutti.editIndividualObservationCaracteristics.action.save.tip"; + i18nMnemonic: "tutti.editIndividualObservationCaracteristics.action.save.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.util.caracteristics.actions.CaracteristicEditorSaveAction.class}; + _help: {"tutti.editIndividualObservationCaracteristics.action.save.help"}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUI.jaxx index 67711d7..c82c7d1 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUI.jaxx @@ -44,8 +44,7 @@ public CaracteristicMapEditorUI(TuttiUI parentUI) { initializer='getContextValue(CaracteristicMapEditorUIModel.class)'/> <JPopupMenu id='tablePopup'> - <JMenuItem id='removeCaracteristicMenu' - onActionPerformed='handler.removeCaracteristic()'/> + <JMenuItem id='removeCaracteristicMenu'/> </JPopupMenu> <row fill='both'> @@ -54,7 +53,7 @@ public CaracteristicMapEditorUI(TuttiUI parentUI) { genericType='Caracteristic'/> </cell> <cell fill='both'> - <JButton id='addRow' onActionPerformed='handler.addRow()'/> + <JButton id='addRow'/> </cell> </row> <row fill='both' weighty='1'> @@ -71,8 +70,8 @@ public CaracteristicMapEditorUI(TuttiUI parentUI) { <row fill='both'> <cell fill='both' columns='2'> <JPanel layout='{new GridLayout(1, 0)}'> - <JButton id='cancelButton' onActionPerformed='handler.cancel()'/> - <JButton id='saveButton' onActionPerformed='handler.save()'/> + <JButton id='cancelButton'/> + <JButton id='saveButton'/> </JPanel> </cell> </row> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUIHandler.java index 208c3e3..ac8a1db 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUIHandler.java @@ -38,7 +38,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.jdesktop.swingx.JXTable; import org.jdesktop.swingx.table.DefaultTableColumnModelExt; -import org.nuiton.jaxx.application.swing.util.Cancelable; import javax.swing.JComponent; import java.io.Serializable; @@ -52,8 +51,7 @@ import static fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapCell * @since 1.4 */ public class CaracteristicMapEditorUIHandler - extends AbstractTuttiTableUIHandler<CaracteristicMapEditorRowModel, CaracteristicMapEditorUIModel, CaracteristicMapEditorUI> - implements Cancelable { + extends AbstractTuttiTableUIHandler<CaracteristicMapEditorRowModel, CaracteristicMapEditorUIModel, CaracteristicMapEditorUI> { private final static Log log = LogFactory.getLog(CaracteristicMapEditorUIHandler.class); @@ -186,44 +184,48 @@ public class CaracteristicMapEditorUIHandler return null; } + public CaracteristicMapCellEditor getCaracteristicMapCellEditor() { + return caracteristicMapCellEditor; + } + //------------------------------------------------------------------------// //-- Cancelable methods --// //------------------------------------------------------------------------// - @Override - public void cancel() { - - if (log.isDebugEnabled()) { - log.debug("Cancel UI " + ui); - } - - // close dialog - closeUI(ui); - } +// @Override +// public void cancel() { +// +// if (log.isDebugEnabled()) { +// log.debug("Cancel UI " + ui); +// } +// +// // close dialog +// closeUI(ui); +// } //------------------------------------------------------------------------// //-- Public methods --// //------------------------------------------------------------------------// - /** Adds a row with the parameter selected in the combo box */ - public void addRow() { - BeanFilterableComboBox<Caracteristic> keyCombo = getKeyCombo(); - Caracteristic selectedItem = (Caracteristic) keyCombo.getSelectedItem(); - CaracteristicMapEditorTableModel tableModel = getTableModel(); - - CaracteristicMapEditorRowModel row = tableModel.createNewRow(); - row.setKey(selectedItem); - getModel().getRows().add(row); - - int rowIndex = tableModel.getRowCount() - 1; - tableModel.fireTableRowsInserted(rowIndex, rowIndex); - - keyCombo.getHandler().removeItem(selectedItem); - - CaracteristicMapEditorUIModel model = getModel(); - model.setModify(true); - recomputeRowValidState(row); - } +// /** Adds a row with the parameter selected in the combo box */ +// public void addRow() { +// BeanFilterableComboBox<Caracteristic> keyCombo = getKeyCombo(); +// Caracteristic selectedItem = (Caracteristic) keyCombo.getSelectedItem(); +// CaracteristicMapEditorTableModel tableModel = getTableModel(); +// +// CaracteristicMapEditorRowModel row = tableModel.createNewRow(); +// row.setKey(selectedItem); +// getModel().getRows().add(row); +// +// int rowIndex = tableModel.getRowCount() - 1; +// tableModel.fireTableRowsInserted(rowIndex, rowIndex); +// +// keyCombo.getHandler().removeItem(selectedItem); +// +// CaracteristicMapEditorUIModel model = getModel(); +// model.setModify(true); +// recomputeRowValidState(row); +// } /** * Edit the batch caracteristics @@ -280,44 +282,44 @@ public class CaracteristicMapEditorUIHandler model.setModify(false); } - public void removeCaracteristic() { - int rowIndex = getTable().getSelectedRow(); - - Preconditions.checkState( - rowIndex != -1, - "Cant remove caracteristic if no caracteristic selected"); - - CaracteristicMapEditorRowModel row = getTableModel().getEntry(rowIndex); - - CaracteristicMap caracteristicMap = getModel().getCaracteristicMap(); - if (caracteristicMap != null) { - caracteristicMap.remove(row.getKey()); - } - - //add the row in the combo - BeanFilterableComboBox keyCombo = getKeyCombo(); - keyCombo.addItem(row.getKey()); - keyCombo.getHandler().reset(); - - // remove the row from the model - getModel().getRows().remove(rowIndex); - - // refresh all the table - getTableModel().fireTableRowsDeleted(rowIndex, rowIndex); - - getModel().removeRowInError(row); - } - - public void save() { - - if (log.isDebugEnabled()) { - log.debug("Save UI " + ui); - } - - caracteristicMapCellEditor.validateEdition(getModel()); - - closeUI(ui); - } +// public void removeCaracteristic() { +// int rowIndex = getTable().getSelectedRow(); +// +// Preconditions.checkState( +// rowIndex != -1, +// "Cant remove caracteristic if no caracteristic selected"); +// +// CaracteristicMapEditorRowModel row = getTableModel().getEntry(rowIndex); +// +// CaracteristicMap caracteristicMap = getModel().getCaracteristicMap(); +// if (caracteristicMap != null) { +// caracteristicMap.remove(row.getKey()); +// } +// +// //add the row in the combo +// BeanFilterableComboBox keyCombo = getKeyCombo(); +// keyCombo.addItem(row.getKey()); +// keyCombo.getHandler().reset(); +// +// // remove the row from the model +// getModel().getRows().remove(rowIndex); +// +// // refresh all the table +// getTableModel().fireTableRowsDeleted(rowIndex, rowIndex); +// +// getModel().removeRowInError(row); +// } + +// public void save() { +// +// if (log.isDebugEnabled()) { +// log.debug("Save UI " + ui); +// } +// +// caracteristicMapCellEditor.validateEdition(getModel()); +// +// closeUI(ui); +// } //------------------------------------------------------------------------// //-- Internal methods --// diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/actions/CaracteristicEditorAddRowAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/actions/CaracteristicEditorAddRowAction.java new file mode 100644 index 0000000..177415d --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/actions/CaracteristicEditorAddRowAction.java @@ -0,0 +1,60 @@ +package fr.ifremer.tutti.ui.swing.util.caracteristics.actions; + +import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.ui.swing.content.actions.GotoSiteAction; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapEditorRowModel; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapEditorTableModel; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapEditorUI; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapEditorUIModel; +import jaxx.runtime.swing.editor.bean.BeanFilterableComboBox; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CaracteristicEditorAddRowAction extends SimpleActionSupport<CaracteristicMapEditorUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(GotoSiteAction.class); + + private static final long serialVersionUID = 1L; + + public CaracteristicEditorAddRowAction(CaracteristicMapEditorUI handler) { + super(handler); + } + + @Override + protected void onActionPerformed(CaracteristicMapEditorUI ui) { + + BeanFilterableComboBox<Caracteristic> keyCombo = ui.getNewRowKey(); + Caracteristic selectedItem = (Caracteristic) keyCombo.getSelectedItem(); + + if (log.isInfoEnabled()) { + log.info("Add caracteristic row: " + selectedItem); + } + + CaracteristicMapEditorTableModel tableModel = ui.getHandler().getTableModel(); + CaracteristicMapEditorUIModel model = ui.getModel(); + + CaracteristicMapEditorRowModel row = tableModel.createNewRow(); + row.setKey(selectedItem); + model.getRows().add(row); + + int rowIndex = tableModel.getRowCount() - 1; + tableModel.fireTableRowsInserted(rowIndex, rowIndex); + + keyCombo.getHandler().removeItem(selectedItem); + + row.setValid(false); + model.addRowInError(row); + + model.setModify(true); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/actions/CaracteristicEditorCancelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/actions/CaracteristicEditorCancelAction.java new file mode 100644 index 0000000..6bc31a8 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/actions/CaracteristicEditorCancelAction.java @@ -0,0 +1,35 @@ +package fr.ifremer.tutti.ui.swing.util.caracteristics.actions; + +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapEditorUI; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CaracteristicEditorCancelAction extends SimpleActionSupport<CaracteristicMapEditorUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CaracteristicEditorCancelAction.class); + + private static final long serialVersionUID = 1L; + + public CaracteristicEditorCancelAction(CaracteristicMapEditorUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CaracteristicMapEditorUI ui) { + + if (log.isInfoEnabled()) { + log.info("Cancel editing caracteristics."); + } + ui.getHandler().onCloseUI(); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/actions/CaracteristicEditorRemoveRowAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/actions/CaracteristicEditorRemoveRowAction.java new file mode 100644 index 0000000..907f90d --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/actions/CaracteristicEditorRemoveRowAction.java @@ -0,0 +1,68 @@ +package fr.ifremer.tutti.ui.swing.util.caracteristics.actions; + +import com.google.common.base.Preconditions; +import fr.ifremer.tutti.persistence.entities.CaracteristicMap; +import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapEditorRowModel; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapEditorTableModel; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapEditorUI; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapEditorUIModel; +import jaxx.runtime.swing.editor.bean.BeanFilterableComboBox; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CaracteristicEditorRemoveRowAction extends SimpleActionSupport<CaracteristicMapEditorUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CaracteristicEditorRemoveRowAction.class); + + private static final long serialVersionUID = 1L; + + public CaracteristicEditorRemoveRowAction(CaracteristicMapEditorUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CaracteristicMapEditorUI ui) { + + int rowIndex = ui.getCaracteristicMapEditorTable().getSelectedRow(); + + Preconditions.checkState( + rowIndex != -1, + "Cant remove caracteristic if no caracteristic selected"); + CaracteristicMapEditorTableModel tableModel = ui.getHandler().getTableModel(); + CaracteristicMapEditorRowModel row = tableModel.getEntry(rowIndex); + + if (log.isInfoEnabled()) { + log.info("Remove caracteristic row: " + row); + } + + CaracteristicMapEditorUIModel model = ui.getModel(); + CaracteristicMap caracteristicMap = model.getCaracteristicMap(); + if (caracteristicMap != null) { + caracteristicMap.remove(row.getKey()); + } + + //add the row in the combo + BeanFilterableComboBox<Caracteristic> keyCombo = ui.getNewRowKey(); + keyCombo.addItem(row.getKey()); + keyCombo.reset(); + + // remove the row from the model + model.getRows().remove(rowIndex); + + // refresh all the table + tableModel.fireTableRowsDeleted(rowIndex, rowIndex); + + model.removeRowInError(row); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/actions/CaracteristicEditorSaveAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/actions/CaracteristicEditorSaveAction.java new file mode 100644 index 0000000..e5eefdf --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/actions/CaracteristicEditorSaveAction.java @@ -0,0 +1,37 @@ +package fr.ifremer.tutti.ui.swing.util.caracteristics.actions; + +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapEditorUI; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class CaracteristicEditorSaveAction extends SimpleActionSupport<CaracteristicMapEditorUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(CaracteristicEditorSaveAction.class); + + private static final long serialVersionUID = 1L; + + public CaracteristicEditorSaveAction(CaracteristicMapEditorUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(CaracteristicMapEditorUI ui) { + + if (log.isInfoEnabled()) { + log.info("Save caracteristics."); + } + + ui.getHandler().getCaracteristicMapCellEditor().validateEdition(ui.getModel()); + ui.getHandler().onCloseUI(); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/EnterWeightUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/EnterWeightUI.css index de94738..fb24044 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/EnterWeightUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/EnterWeightUI.css @@ -39,6 +39,7 @@ text: "tutti.catches.enterWeight.action.cancel"; toolTipText: "tutti.catches.enterWeight.action.cancel.tip"; i18nMnemonic: "tutti.catches.enterWeight.action.cancel.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.util.catches.actions.EnterWeightCancelAction.class}; } #validateButton { @@ -47,4 +48,5 @@ toolTipText: "tutti.catches.enterWeight.action.validate.tip"; i18nMnemonic: "tutti.catches.enterWeight.action.validate.mnemonic"; enabled: {editor.getModel() != null}; + _simpleAction: {fr.ifremer.tutti.ui.swing.util.catches.actions.EnterWeightValidateAction.class}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/EnterWeightUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/EnterWeightUIHandler.java index 4147f6c..bc35897 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/EnterWeightUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/EnterWeightUIHandler.java @@ -25,19 +25,14 @@ package fr.ifremer.tutti.ui.swing.util.catches; import fr.ifremer.tutti.type.WeightUnit; import fr.ifremer.tutti.ui.swing.TuttiUIContext; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; -import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; import jaxx.runtime.JAXXUtil; import jaxx.runtime.SwingUtil; import jaxx.runtime.validator.swing.SwingValidator; -import javax.swing.AbstractAction; -import javax.swing.Action; -import javax.swing.JButton; import javax.swing.JComponent; import javax.swing.JRootPane; import javax.swing.KeyStroke; import java.awt.Component; -import java.awt.event.ActionEvent; import java.awt.event.KeyEvent; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; @@ -75,45 +70,16 @@ public class EnterWeightUIHandler extends AbstractTuttiUIHandler<TuttiUIContext, initUI(ui); - Action cancelAction = new AbstractAction() { - - private static final long serialVersionUID = 1L; - - @Override - public void actionPerformed(ActionEvent e) { - - Float originalWeight = getUI().getOriginalWeight(); - getUI().editor.getModel().setNumberValue(originalWeight); - getUI().dispose(); - - } - }; - JButton cancelButton = ui.getCancelButton(); - TuttiUIUtil.prepareAction(cancelButton, cancelAction, CANCEL_ACTION); - - Action validateAction = new AbstractAction() { - - private static final long serialVersionUID = 1L; - - @Override - public void actionPerformed(ActionEvent e) { - - getUI().dispose(); - - } - }; - - JButton validateButton = ui.getValidateButton(); - TuttiUIUtil.prepareAction(validateButton, validateAction, VALIDATE_ACTION); - JRootPane rootPane = ui.getRootPane(); // add a auto-close action - rootPane.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), CANCEL_ACTION); + rootPane.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0), VALIDATE_ACTION); + rootPane.getActionMap().put(CANCEL_ACTION, ui.getValidateButton().getAction()); + + rootPane.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), CANCEL_ACTION); + rootPane.getActionMap().put(CANCEL_ACTION, ui.getCancelButton().getAction()); - rootPane.getActionMap().put(CANCEL_ACTION, cancelAction); - rootPane.getActionMap().put(VALIDATE_ACTION, validateAction); ui.addWindowListener(new WindowAdapter() { diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/actions/EnterWeightCancelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/actions/EnterWeightCancelAction.java new file mode 100644 index 0000000..4bb99b7 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/actions/EnterWeightCancelAction.java @@ -0,0 +1,38 @@ +package fr.ifremer.tutti.ui.swing.util.catches.actions; + +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.catches.EnterWeightUI; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class EnterWeightCancelAction extends SimpleActionSupport<EnterWeightUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(EnterWeightCancelAction.class); + + private static final long serialVersionUID = 1L; + + public EnterWeightCancelAction(EnterWeightUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(EnterWeightUI ui) { + + if (log.isInfoEnabled()) { + log.info("Cancel enter weight"); + } + + Float originalWeight = ui.getOriginalWeight(); + ui.getEditor().getModel().setNumberValue(originalWeight); + ui.dispose(); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/actions/EnterWeightValidateAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/actions/EnterWeightValidateAction.java new file mode 100644 index 0000000..6418390 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/actions/EnterWeightValidateAction.java @@ -0,0 +1,35 @@ +package fr.ifremer.tutti.ui.swing.util.catches.actions; + +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.catches.EnterWeightUI; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class EnterWeightValidateAction extends SimpleActionSupport<EnterWeightUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(EnterWeightValidateAction.class); + + private static final long serialVersionUID = 1L; + + public EnterWeightValidateAction(EnterWeightUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(EnterWeightUI ui) { + + if (log.isInfoEnabled()) { + log.info("Validate weight: " + ui.getEditor().getModel().getNumberValue()); + } + ui.dispose(); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/EnterMelagWeightUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/EnterMelagWeightUI.css index a3e303e..8f80d2b 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/EnterMelagWeightUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/EnterMelagWeightUI.css @@ -43,6 +43,7 @@ text: "tutti.createSpeciesMelag.action.cancel"; toolTipText: "tutti.createSpeciesMelag.action.cancel.tip"; i18nMnemonic: "tutti.createSpeciesMelag.action.cancel.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.util.species.actions.EnterMelagWeightCancelAction.class}; } #validateButton { @@ -51,4 +52,5 @@ toolTipText: "tutti.createSpeciesMelag.action.validate.tip"; i18nMnemonic: "tutti.createSpeciesMelag.action.validate.mnemonic"; enabled: {editor.getModel() != null}; + _simpleAction: {fr.ifremer.tutti.ui.swing.util.species.actions.EnterMelagWeightValidateAction.class}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/EnterMelagWeightUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/EnterMelagWeightUI.jaxx index ab72539..2015b8c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/EnterMelagWeightUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/EnterMelagWeightUI.jaxx @@ -59,7 +59,7 @@ public Float openAndGetWeightValue(WeightUnit weightUnit) { </row> </Table> <JPanel layout='{new GridLayout(1,0)}' constraints='BorderLayout.SOUTH'> - <JButton id='cancelButton' onActionPerformed='editor.getModel().setNumberValue(null); dispose();'/> - <JButton id='validateButton' onActionPerformed='dispose();'/> + <JButton id='cancelButton'/> + <JButton id='validateButton'/> </JPanel> </JDialog> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/SelectSpeciesUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/SelectSpeciesUI.css index cc97ce3..bbf5fe6 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/SelectSpeciesUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/SelectSpeciesUI.css @@ -19,45 +19,28 @@ * <http://www.gnu.org/licenses/gpl-3.0.html>. * #L% */ -#speciesCombo { - showReset: true; - -bean: { - model -} - -; -property: selectedSpecies - -; -selectedItem: { - model . getSelectedSpecies() -} -; -data: { - model . getSpecies() -} - -; +#speciesCombo { + showReset: true; + bean: {model}; + property: selectedSpecies; + selectedItem: {model.getSelectedSpecies()}; + data: {model.getSpecies()}; } #cancelButton { - actionIcon: cancel; - text: "tutti.selectSpecies.action.cancel"; - toolTipText: "tutti.selectSpecies.action.cancel.tip"; - i18nMnemonic: "tutti.selectSpecies.action.cancel.mnemonic"; + actionIcon: cancel; + text: "tutti.selectSpecies.action.cancel"; + toolTipText: "tutti.selectSpecies.action.cancel.tip"; + i18nMnemonic: "tutti.selectSpecies.action.cancel.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.util.species.actions.SelectSpeciesCancelAction.class}; } #validateButton { - actionIcon: accept; - text: "tutti.selectSpecies.action.validate"; - toolTipText: "tutti.selectSpecies.action.validate.tip"; - i18nMnemonic: "tutti.selectSpecies.action.validate.mnemonic"; - -enabled: { - model . getSelectedSpecies() != null -} - -; + actionIcon: accept; + text: "tutti.selectSpecies.action.validate"; + toolTipText: "tutti.selectSpecies.action.validate.tip"; + i18nMnemonic: "tutti.selectSpecies.action.validate.mnemonic"; + _simpleAction: {fr.ifremer.tutti.ui.swing.util.species.actions.SelectSpeciesValidateAction.class}; + enabled: {model.getSelectedSpecies() != null}; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/SelectSpeciesUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/SelectSpeciesUI.jaxx index be03444..ac10ee3 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/SelectSpeciesUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/SelectSpeciesUI.jaxx @@ -46,8 +46,8 @@ public SelectSpeciesUI(boolean useSurveyCode, TuttiUI parentUI) { constructorParams='this' genericType='Species'/> <JPanel layout='{new GridLayout(1, 0)}' constraints='BorderLayout.SOUTH'> - <JButton id='cancelButton' onActionPerformed='handler.cancel()'/> - <JButton id='validateButton' onActionPerformed='handler.validate()'/> + <JButton id='cancelButton'/> + <JButton id='validateButton'/> </JPanel> </JPanel> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/actions/EnterMelagWeightCancelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/actions/EnterMelagWeightCancelAction.java new file mode 100644 index 0000000..0430476 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/actions/EnterMelagWeightCancelAction.java @@ -0,0 +1,37 @@ +package fr.ifremer.tutti.ui.swing.util.species.actions; + +import fr.ifremer.tutti.ui.swing.content.actions.GotoSiteAction; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.species.EnterMelagWeightUI; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class EnterMelagWeightCancelAction extends SimpleActionSupport<EnterMelagWeightUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(GotoSiteAction.class); + + private static final long serialVersionUID = 1L; + + public EnterMelagWeightCancelAction(EnterMelagWeightUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(EnterMelagWeightUI ui) { + + if (log.isInfoEnabled()) { + log.info("Cancel enter melag weight."); + } + ui.getEditor().getModel().setNumberValue(null); + ui.dispose(); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/actions/EnterMelagWeightValidateAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/actions/EnterMelagWeightValidateAction.java new file mode 100644 index 0000000..8943c5c --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/actions/EnterMelagWeightValidateAction.java @@ -0,0 +1,36 @@ +package fr.ifremer.tutti.ui.swing.util.species.actions; + +import fr.ifremer.tutti.ui.swing.content.actions.GotoSiteAction; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.species.EnterMelagWeightUI; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class EnterMelagWeightValidateAction extends SimpleActionSupport<EnterMelagWeightUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(GotoSiteAction.class); + + private static final long serialVersionUID = 1L; + + public EnterMelagWeightValidateAction(EnterMelagWeightUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(EnterMelagWeightUI ui) { + + if (log.isInfoEnabled()) { + log.info("Validate melag weight: " + ui.getEditor().getModel().getNumberValue()); + } + ui.dispose(); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/actions/SelectSpeciesCancelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/actions/SelectSpeciesCancelAction.java new file mode 100644 index 0000000..b22474a --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/actions/SelectSpeciesCancelAction.java @@ -0,0 +1,36 @@ +package fr.ifremer.tutti.ui.swing.util.species.actions; + +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUI; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class SelectSpeciesCancelAction extends SimpleActionSupport<SelectSpeciesUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(SelectSpeciesCancelAction.class); + + private static final long serialVersionUID = 1L; + + public SelectSpeciesCancelAction(SelectSpeciesUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(SelectSpeciesUI ui) { + + if (log.isInfoEnabled()) { + log.info("Cancel species selection."); + } + ui.getModel().setSelectedSpecies(null); + ui.getHandler().closeDialog(); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/actions/SelectSpeciesValidateAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/actions/SelectSpeciesValidateAction.java new file mode 100644 index 0000000..e15c534 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/actions/SelectSpeciesValidateAction.java @@ -0,0 +1,35 @@ +package fr.ifremer.tutti.ui.swing.util.species.actions; + +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; +import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUI; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class SelectSpeciesValidateAction extends SimpleActionSupport<SelectSpeciesUI> { + + /** Logger. */ + private static final Log log = LogFactory.getLog(SelectSpeciesValidateAction.class); + + private static final long serialVersionUID = 1L; + + public SelectSpeciesValidateAction(SelectSpeciesUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(SelectSpeciesUI ui) { + + if (log.isInfoEnabled()) { + log.info("Validate species selection: " + ui.getModel().getSelectedSpecies()); + } + ui.getHandler().closeDialog(); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties b/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties index cb0a0bd..51dc853 100644 --- a/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties +++ b/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties @@ -1,5 +1,6 @@ application.action.create.error= application.error.ui.business.warning= +jaxx.application.action.create.error= swing.error.cannot.open.file= tutti.about.bottomText= tutti.about.message= @@ -677,6 +678,7 @@ tutti.editCruise.action.resetCruise= tutti.editCruise.action.resetCruise.mnemonic= tutti.editCruise.action.resetCruise.tip= tutti.editCruise.action.resetEditCruise= +tutti.editCruise.action.resetName.tip= tutti.editCruise.action.resetSurveyPart.mnemonic=S tutti.editCruise.action.resetSurveyPart.tip=Reset survey part tutti.editCruise.action.save.gearChanged.help= diff --git a/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties b/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties index 3fdf7d3..7cca40a 100644 --- a/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties +++ b/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties @@ -1,5 +1,6 @@ application.action.create.error= application.error.ui.business.warning= +jaxx.application.action.create.error= swing.error.cannot.open.file=Aucun programme n'est défini pour ouvrir ce type de fichier. Enregistrez le fichier et ouvrez le en dehors de l'application tutti.about.bottomText=Copyright %s - %s - version %s tutti.about.message=<h3>Allegro Campagne</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 [...] @@ -653,7 +654,7 @@ tutti.editCruise.action.generateName.tip=Générer le nom normalisé de la campa tutti.editCruise.action.resetCruise=Réinitialiser tutti.editCruise.action.resetCruise.mnemonic=R tutti.editCruise.action.resetCruise.tip=Réinitialiser la campagne (tout modification non sauvegardée sera perdue). -tutti.editCruise.action.resetSurveyPart.mnemonic=S +tutti.editCruise.action.resetName.tip=Réinitialiser le nom de la campagne tutti.editCruise.action.resetSurveyPart.tip=Réinitialiser la série partielle tutti.editCruise.action.save.gearChanged.help=Les engins des traits de la campagne vont également être modifiés.<ul><li><strong>Annuler</strong> pour ne pas enregistrer les modifications de la campagne ni les traits</li><li><strong>OK</strong> pour enregistrer la campagne et modifier les engins des traits</li></ul>. tutti.editCruise.action.save.gearChanged.message=Les engins de la campagne ont été modifiés. -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm