branch develop updated (754637f -> 837d7ac)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository observe. See http://git.codelutin.com/observe.git from 754637f Merge branch 'feature/7706' into develop new c207443 ajout des menus contextuels new 01661cc ajout des actions sur les nouveaux menus (refs #7621) new b3c0d58 - réordonnement des méthodes de service - ajout d'une méthode pour déplacer un trip dans un autre programme new bbe8e59 suppression de l'ouverture du programme s'il n'y a que lui d'ouvert new 58e70bc réactivation de l'action pour changer une marée de programme new 6ebc9b9 extraction de la méthode de filtrage dans le dtos new e11cad8 déplacement des marées longline sélectionnées dans un dossier aléatoire (refs #7621) new 6eff58e refactoring new f5ecc24 déplacement d'une marée seine dans un programme aléatoire (refs #7621) new 0257b06 sélection du programme dans lequel déplacer les marées (refs #7621) new bcde433 tri des programmes dans la popup + ajout d'une icône au bouton (fixes #7621) new 837d7ac fixes #7621 Ajout de nouvelles fonctionnalités sur la liste des marées The 12 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 837d7ac2ccb939c3e9badb86642d296cfac6df03 Merge: 754637f bcde433 Author: Kevin Morin <morin@codelutin.com> Date: Tue Nov 10 16:53:57 2015 +0100 fixes #7621 Ajout de nouvelles fonctionnalités sur la liste des marées commit bcde433aea8e7ad6752cd1919db65f8131149372 Author: Kevin Morin <morin@codelutin.com> Date: Tue Nov 10 16:46:32 2015 +0100 tri des programmes dans la popup + ajout d'une icône au bouton (fixes #7621) commit 0257b062bc61483ad6e24ee5592390d736fa5e44 Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 18:21:48 2015 +0100 sélection du programme dans lequel déplacer les marées (refs #7621) commit f5ecc24be33a336b40c9ebd8c6d13d6bc3350547 Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 17:41:10 2015 +0100 déplacement d'une marée seine dans un programme aléatoire (refs #7621) commit 6eff58eb72148fd80937ac7b4e4870f6f7d5beff Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 17:32:04 2015 +0100 refactoring commit e11cad851e1a47bdb500dbb5b774f841b83e616e Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 17:06:25 2015 +0100 déplacement des marées longline sélectionnées dans un dossier aléatoire (refs #7621) commit 6ebc9b945be162a92888f6d6556f21472a8d80e3 Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 13:56:51 2015 +0100 extraction de la méthode de filtrage dans le dtos commit 58e70bc87bb89b64b11e90f34e98e65902a18cd8 Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 13:41:45 2015 +0100 réactivation de l'action pour changer une marée de programme commit bbe8e59752d045db56692957a7275eebe0bd332d Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 13:40:09 2015 +0100 suppression de l'ouverture du programme s'il n'y a que lui d'ouvert commit b3c0d58224491a054e19b2a9e00e963024df8912 Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 13:39:24 2015 +0100 - réordonnement des méthodes de service - ajout d'une méthode pour déplacer un trip dans un autre programme commit 01661cca7cc4ff30fd399675b908e5766b1e5727 Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 11:02:54 2015 +0100 ajout des actions sur les nouveaux menus (refs #7621) commit c207443a03ad68942fcb91512479f112efc59b31 Author: Kevin Morin <morin@codelutin.com> Date: Fri Nov 6 18:03:03 2015 +0100 ajout des menus contextuels Summary of changes: .../src/main/filters/observe-ui.properties | 1 + .../observe/ObserveSwingApplicationContext.java | 7 + .../fr/ird/observe/business/db/DataContext.java | 6 + .../main/java/fr/ird/observe/ui/ObserveMainUI.css | 20 ++ .../main/java/fr/ird/observe/ui/ObserveMainUI.jaxx | 5 + .../actions/shared/MoveTripLonglinesUIAction.java | 69 +++++++ .../ui/actions/shared/MoveTripSeinesUIAction.java | 69 +++++++ .../ui/actions/shared/MoveTripsUIAction.java | 227 +++++++++++++++++++++ .../content/list/impl/longline/TripLonglinesUI.css | 12 ++ .../list/impl/longline/TripLonglinesUI.jaxx | 23 +++ .../list/impl/longline/TripLonglinesUIModel.java | 33 +++ .../ui/content/list/impl/seine/TripSeinesUI.css | 9 + .../ui/content/list/impl/seine/TripSeinesUI.jaxx | 23 +++ .../content/list/impl/seine/TripSeinesUIModel.java | 33 +++ .../tree/ObserveNavigationTreeShowPopupAction.java | 131 ++++++++---- .../fr/ird/observe/ui/tree/ObserveTreeHelper.java | 3 +- .../actions/ChangeTripProgramActionListener.java | 51 +++-- .../observe-application-swing_en_GB.properties | 12 ++ .../observe-application-swing_es_ES.properties | 12 ++ .../observe-application-swing_fr_FR.properties | 8 + .../src/main/resources/icons/action-move-trips.png | Bin 0 -> 1036 bytes .../ActivityLonglineServiceController.java | 10 +- .../v1/longline/SetLonglineServiceController.java | 9 +- .../v1/longline/TripLonglineServiceController.java | 16 +- .../v1/seine/ActivitySeineServiceController.java | 9 +- .../v1/seine/FloatingObjectServiceController.java | 9 +- .../v1/seine/RouteServiceController.java | 9 +- .../v1/seine/SetSeineServiceController.java | 9 +- .../v1/seine/TripSeineServiceController.java | 16 +- .../observe/ObserveTopiaPersistenceContext.java | 4 + .../service/longline/ActivityLonglineService.java | 5 +- .../service/longline/SetLonglineService.java | 5 +- .../service/longline/TripLonglineService.java | 17 +- .../service/seine/ActivitySeineService.java | 5 +- .../service/seine/FloatingObjectService.java | 5 +- .../services/service/seine/RouteService.java | 5 +- .../services/service/seine/SetSeineService.java | 5 +- .../services/service/seine/TripSeineService.java | 16 +- .../services/dto/referential/ProgramDtos.java | 5 + .../longline/ActivityLonglineServiceTopia.java | 9 +- .../service/longline/SetLonglineServiceTopia.java | 10 +- .../service/longline/TripLonglineServiceTopia.java | 41 +++- .../service/seine/ActivitySeineServiceTopia.java | 9 +- .../service/seine/FloatingObjectServiceTopia.java | 9 +- .../services/service/seine/RouteServiceTopia.java | 9 +- .../service/seine/SetSeineServiceTopia.java | 9 +- .../service/seine/TripSeineServiceTopia.java | 36 +++- 47 files changed, 899 insertions(+), 146 deletions(-) create mode 100644 observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripLonglinesUIAction.java create mode 100644 observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripSeinesUIAction.java create mode 100644 observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripsUIAction.java create mode 100644 observe-application-swing/src/main/resources/icons/action-move-trips.png -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit c207443a03ad68942fcb91512479f112efc59b31 Author: Kevin Morin <morin@codelutin.com> Date: Fri Nov 6 18:03:03 2015 +0100 ajout des menus contextuels --- .../main/java/fr/ird/observe/ui/ObserveMainUI.css | 16 +++ .../main/java/fr/ird/observe/ui/ObserveMainUI.jaxx | 5 + .../tree/ObserveNavigationTreeShowPopupAction.java | 118 +++++++++++++-------- .../observe-application-swing_en_GB.properties | 4 + .../observe-application-swing_es_ES.properties | 4 + .../observe-application-swing_fr_FR.properties | 4 + 6 files changed, 107 insertions(+), 44 deletions(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/ObserveMainUI.css b/observe-application-swing/src/main/java/fr/ird/observe/ui/ObserveMainUI.css index 736d57e..023515c 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/ObserveMainUI.css +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/ObserveMainUI.css @@ -52,6 +52,22 @@ JSplitPane { enabled: false; } +#navigationOpenTripAction { + text: "observe.navigationMenu.openTripAction"; + toolTipText: "observe.navigationMenu.openTripAction"; + enabled: {!dataContext.isOpenTrip()}; +} + +#navigationCloseTripAction { + text: "observe.navigationMenu.closeTripAction"; + toolTipText: "observe.navigationMenu.closeTripAction"; +} + +#navigationDeleteTripAction { + text: "observe.navigationMenu.deleteTripAction"; + toolTipText: "observe.navigationMenu.deleteTripAction"; +} + #menuFile { text: "observe.menu.file"; mnemonic: F; diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/ObserveMainUI.jaxx b/observe-application-swing/src/main/java/fr/ird/observe/ui/ObserveMainUI.jaxx index 54f7e60..0d78c74 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/ObserveMainUI.jaxx +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/ObserveMainUI.jaxx @@ -31,6 +31,8 @@ fr.ird.observe.services.dto.referential.ProgramDto fr.ird.observe.services.dto.constants.ReferentialLocale + fr.ird.observe.ui.actions.shared.ReOpenUIAction + fr.ird.observe.ui.admin.AdminStep fr.ird.observe.ui.content.ContentUIManager fr.ird.observe.ui.tree.ObserveTreeHelper @@ -68,6 +70,9 @@ <JPopupMenu id='navigationPopup'> <JMenuItem id="navigationNoAction"/> <JMenu id="navigationMoveTripAction"/> + <JMenuItem id="navigationOpenTripAction"/> + <JMenuItem id="navigationCloseTripAction"/> + <JMenuItem id="navigationDeleteTripAction"/> </JPopupMenu> <ObserveSwingApplicationConfig id='config' initializer='getContextValue(ObserveSwingApplicationConfig.class)'/> diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java index c62b2d4..51b8641 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java @@ -66,6 +66,10 @@ public class ObserveNavigationTreeShowPopupAction { private final JMenuItem noAction; + private final JMenuItem openTripAction; + private final JMenuItem closeTripAction; + private final JMenuItem deleteTripAction; + public ObserveNavigationTreeShowPopupAction(ObserveTreeHelper treeHelper, JScrollPane pane, JPopupMenu popup) { this.treeHelper = treeHelper; @@ -75,6 +79,9 @@ public class ObserveNavigationTreeShowPopupAction { JMenuItem moveTripComponent = null; JMenuItem noActionComponent = null; + JMenuItem openTripActionComponent = null; + JMenuItem closeTripActionComponent = null; + JMenuItem deleteTripActionComponent = null; for (MenuElement menuElement : popup.getSubElements()) { @@ -84,10 +91,23 @@ public class ObserveNavigationTreeShowPopupAction { if (menuElement.getComponent().getName().equals("navigationNoAction")) { noActionComponent = (JMenuItem) menuElement.getComponent(); } + if (menuElement.getComponent().getName().equals("navigationOpenTripAction")) { + openTripActionComponent = (JMenuItem) menuElement.getComponent(); + } + if (menuElement.getComponent().getName().equals("navigationCloseTripAction")) { + closeTripActionComponent = (JMenuItem) menuElement.getComponent(); + } + if (menuElement.getComponent().getName().equals("navigationDeleteTripAction")) { + deleteTripActionComponent = (JMenuItem) menuElement.getComponent(); + } } this.moveTripPopup = moveTripComponent; this.noAction = noActionComponent; + this.openTripAction = openTripActionComponent; + this.closeTripAction = closeTripActionComponent; + this.deleteTripAction = deleteTripActionComponent; + KeyAdapter keyAdapter = new KeyAdapter() { @Override public void keyPressed(KeyEvent e) { @@ -197,55 +217,65 @@ public class ObserveNavigationTreeShowPopupAction { // clean popup popup.removeAll(); - if (selectedNode.isTripNode() && selectedNode.isOpen()) { + if (selectedNode.isTripNode()) { if (log.isInfoEnabled()) { log.info("Will load popup for trip node."); } - popup.add(moveTripPopup); - - moveTripPopup.removeAll(); - -// DataService dataService = treeHelper.getDataService(); - ObserveSwingDataSource dataSource = treeHelper.getDataProvider().getDataSource(); - - String tripId = selectedNode.getId(); - - List<ProgramDto> programs; - - //FIXME -// try { -// -// programs = dataService.getPossibleProgramsForTrip(dataSource, tripId); -// ProgramDtos.sort(programs); -// -// } catch (DataSourceException e) { -// throw new ObserveTechnicalException("Can't get possible programs for trip " + tripId, e); -// } -// -// String openProgramId = dataService.getDataContext().getOpenProgramId(); -// -// Decorator<Program> programDecorator = dataService.getDecoratorService().getDecoratorByType(Program.class); -// for (Program program : programs) { -// -// String programId = program.getTopiaId(); -// -// if (!programId.equals(openProgramId)) { -// -// JMenuItem item = new JMenuItem(programDecorator.toString(program)); -// item.setName(programId); -// item.addActionListener(new ChangeTripProgramActionListener(treeHelper, -// dataService, -// dataSource, -// tripId, -// programId)); -// -// moveTripPopup.add(item); -// -// } -// -// } + if (selectedNode.isOpen()) { + popup.add(closeTripAction); + + popup.add(moveTripPopup); + + moveTripPopup.removeAll(); + + // DataService dataService = treeHelper.getDataService(); + ObserveSwingDataSource dataSource = treeHelper.getDataProvider().getDataSource(); + + String tripId = selectedNode.getId(); + + List<ProgramDto> programs; + + //FIXME + // try { + // + // programs = dataService.getPossibleProgramsForTrip(dataSource, tripId); + // ProgramDtos.sort(programs); + // + // } catch (DataSourceException e) { + // throw new ObserveTechnicalException("Can't get possible programs for trip " + tripId, e); + // } + // + // String openProgramId = dataService.getDataContext().getOpenProgramId(); + // + // Decorator<Program> programDecorator = dataService.getDecoratorService().getDecoratorByType(Program.class); + // for (Program program : programs) { + // + // String programId = program.getTopiaId(); + // + // if (!programId.equals(openProgramId)) { + // + // JMenuItem item = new JMenuItem(programDecorator.toString(program)); + // item.setName(programId); + // item.addActionListener(new ChangeTripProgramActionListener(treeHelper, + // dataService, + // dataSource, + // tripId, + // programId)); + // + // moveTripPopup.add(item); + // + // } + // + // } + + } else { + popup.add(openTripAction); + } + + popup.add(deleteTripAction); + deleteTripAction.setEnabled(selectedNode.isOpen()); } else { diff --git a/observe-application-swing/src/main/resources/i18n/observe-application-swing_en_GB.properties b/observe-application-swing/src/main/resources/i18n/observe-application-swing_en_GB.properties index 9817a9b..714463d 100644 --- a/observe-application-swing/src/main/resources/i18n/observe-application-swing_en_GB.properties +++ b/observe-application-swing/src/main/resources/i18n/observe-application-swing_en_GB.properties @@ -1130,6 +1130,7 @@ observe.config.ui.locale=Application's language observe.config.ui.showNumberEditorButton=Flag sets to true to show button to invoke popup on number's editors observe.config.ui.showTimeEditorSlider=Show timer slider observe.config.ui.storeRemoteStorage=Flag sets to true to store in config a remote connexion (except passwords) +observe.config.ui.treeOpenNodes= observe.configuration.description= observe.content.mode.create.tip= observe.content.mode.read.tip= @@ -1545,8 +1546,11 @@ observe.message.validation.start.referentiel= observe.message.validation.use.storage= observe.message.warning.will.be.delete= observe.model.version= +observe.navigationMenu.closeTripAction= +observe.navigationMenu.deleteTripAction= observe.navigationMenu.moveTrip=Change program observe.navigationMenu.noAction=< No action > +observe.navigationMenu.openTripAction= observe.nonTargetCatch.message.table.will.delete.nonTargetSample= observe.nonTargetCatch.table.catchWeight= observe.nonTargetCatch.table.catchWeight.tip= diff --git a/observe-application-swing/src/main/resources/i18n/observe-application-swing_es_ES.properties b/observe-application-swing/src/main/resources/i18n/observe-application-swing_es_ES.properties index a66e9dd..b237af9 100644 --- a/observe-application-swing/src/main/resources/i18n/observe-application-swing_es_ES.properties +++ b/observe-application-swing/src/main/resources/i18n/observe-application-swing_es_ES.properties @@ -1130,6 +1130,7 @@ observe.config.ui.locale=Idioma de la aplicación (fr_FR, en_GB o es_ES) observe.config.ui.showNumberEditorButton=Para mostrar el botón que permite usar el editor numérico a la izquierda de cada campo numérico observe.config.ui.showTimeEditorSlider= observe.config.ui.storeRemoteStorage=Para activar la copia de seguridad de la configuración del origen de datos remota +observe.config.ui.treeOpenNodes= observe.configuration.description= observe.content.mode.create.tip=Objeto en proceso de creación observe.content.mode.read.tip=Objeto no se puede editar @@ -1547,8 +1548,11 @@ observe.message.validation.start.referentiel=Validación del referencial de tipo observe.message.validation.use.storage=Se realizará la validación de %1$s observe.message.warning.will.be.delete=%1$s\n\nAtención, la exportación reemplazará la marea existente. observe.model.version= +observe.navigationMenu.closeTripAction= +observe.navigationMenu.deleteTripAction= observe.navigationMenu.moveTrip= observe.navigationMenu.noAction= +observe.navigationMenu.openTripAction= observe.nonTargetCatch.message.table.will.delete.nonTargetSample=¡Confirmar la eliminación de los objetos de la copia de seguridad.\!\n\n Las especies siguientes no estarán disponibles en los muestreos\:\n%1$s\nComo consecuencia se suprimiràn los muestreos siguientes \:\n%2$s observe.nonTargetCatch.table.catchWeight=Peso observe.nonTargetCatch.table.catchWeight.tip=Peso estimados (en t) diff --git a/observe-application-swing/src/main/resources/i18n/observe-application-swing_fr_FR.properties b/observe-application-swing/src/main/resources/i18n/observe-application-swing_fr_FR.properties index 4a76daf..83e1f91 100644 --- a/observe-application-swing/src/main/resources/i18n/observe-application-swing_fr_FR.properties +++ b/observe-application-swing/src/main/resources/i18n/observe-application-swing_fr_FR.properties @@ -1130,6 +1130,7 @@ observe.config.ui.locale=Langue utilisée par l'application (fr_FR, en_GB ou es_ observe.config.ui.showNumberEditorButton=Pour afficher le bouton qui permet d'utiliser l'éditeur numérique à gauche de chaque champs numérique observe.config.ui.showTimeEditorSlider=Pour afficher la réglette d'édition des heures observe.config.ui.storeRemoteStorage=Pour activer la sauvegarde de la configuration de la source distante +observe.config.ui.treeOpenNodes=Noeuds de l'arbre ouverts lors de la dernière fermeture de la base observe.configuration.description= observe.content.mode.create.tip=L'objet est en cours de création observe.content.mode.read.tip=L'objet n'est pas éditable @@ -1540,8 +1541,11 @@ observe.message.validation.start.referentiel=Validation du référentiel de type observe.message.validation.use.storage=La validation sera effectuée sur %1$s observe.message.warning.will.be.delete=%1$s\n\nAttention, l'export remplacera la marée existante. observe.model.version=Version du modèle de données +observe.navigationMenu.closeTripAction=Clôturer la marée +observe.navigationMenu.deleteTripAction=Supprimer la marée observe.navigationMenu.moveTrip=Réallocation du programme observe.navigationMenu.noAction=< Aucune action définie > +observe.navigationMenu.openTripAction=Réouvrir la marée observe.nonTargetCatch.message.table.will.delete.nonTargetSample=En confirmant la sauvegarde des objets vont être supprimés\!\n\nLes espèces suivantes ne seront plus utilisables dans des échantillonages \:\n%1$s\nCela entrainera la suppression des échantillonages des ces espèces observe.nonTargetCatch.table.catchWeight=Poids observe.nonTargetCatch.table.catchWeight.tip=Poids estimé (en t) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit 01661cca7cc4ff30fd399675b908e5766b1e5727 Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 11:02:54 2015 +0100 ajout des actions sur les nouveaux menus (refs #7621) --- .../main/java/fr/ird/observe/ObserveSwingApplicationContext.java | 3 +++ .../src/main/java/fr/ird/observe/ui/ObserveMainUI.css | 3 +++ .../observe/ui/tree/ObserveNavigationTreeShowPopupAction.java | 9 ++++++++- 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java b/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java index ef07bae..7cdd000 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java @@ -1001,6 +1001,9 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im exists = newService(SetLonglineService.class).exists(id); + } else { + + exists = false; } } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/ObserveMainUI.css b/observe-application-swing/src/main/java/fr/ird/observe/ui/ObserveMainUI.css index 023515c..5ba212f 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/ObserveMainUI.css +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/ObserveMainUI.css @@ -56,16 +56,19 @@ JSplitPane { text: "observe.navigationMenu.openTripAction"; toolTipText: "observe.navigationMenu.openTripAction"; enabled: {!dataContext.isOpenTrip()}; + action: {new fr.ird.observe.ui.actions.shared.ReOpenUIAction(this)}; } #navigationCloseTripAction { text: "observe.navigationMenu.closeTripAction"; toolTipText: "observe.navigationMenu.closeTripAction"; + action: {new fr.ird.observe.ui.actions.shared.CloseOpenUIAction(this)}; } #navigationDeleteTripAction { text: "observe.navigationMenu.deleteTripAction"; toolTipText: "observe.navigationMenu.deleteTripAction"; + action: {new fr.ird.observe.ui.actions.shared.DeleteDataUIAction(this)}; } #menuFile { diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java index 51b8641..5c88f99 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java @@ -23,6 +23,7 @@ package fr.ird.observe.ui.tree; */ import com.google.common.base.Preconditions; +import fr.ird.observe.ObserveSwingApplicationContext; import fr.ird.observe.db.ObserveSwingDataSource; import fr.ird.observe.services.dto.referential.ProgramDto; import org.apache.commons.logging.Log; @@ -224,6 +225,8 @@ public class ObserveNavigationTreeShowPopupAction { } if (selectedNode.isOpen()) { + + closeTripAction.putClientProperty("ui", ObserveSwingApplicationContext.get().getSelectedContentUI()); popup.add(closeTripAction); popup.add(moveTripPopup); @@ -271,11 +274,15 @@ public class ObserveNavigationTreeShowPopupAction { // } } else { + + openTripAction.putClientProperty("ui", ObserveSwingApplicationContext.get().getSelectedContentUI()); popup.add(openTripAction); + } - popup.add(deleteTripAction); + deleteTripAction.putClientProperty("ui", ObserveSwingApplicationContext.get().getSelectedContentUI()); deleteTripAction.setEnabled(selectedNode.isOpen()); + popup.add(deleteTripAction); } else { -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit b3c0d58224491a054e19b2a9e00e963024df8912 Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 13:39:24 2015 +0100 - réordonnement des méthodes de service - ajout d'une méthode pour déplacer un trip dans un autre programme --- .../longline/ActivityLonglineServiceController.java | 10 +++++----- .../v1/longline/SetLonglineServiceController.java | 9 +++++---- .../v1/longline/TripLonglineServiceController.java | 9 +++++++-- .../v1/seine/ActivitySeineServiceController.java | 9 +++++---- .../v1/seine/FloatingObjectServiceController.java | 9 +++++---- .../controller/v1/seine/RouteServiceController.java | 9 +++++---- .../v1/seine/SetSeineServiceController.java | 9 +++++---- .../v1/seine/TripSeineServiceController.java | 9 +++++++-- .../ird/observe/ObserveTopiaPersistenceContext.java | 4 ++++ .../service/longline/ActivityLonglineService.java | 5 +++-- .../services/service/longline/SetLonglineService.java | 5 +++-- .../service/longline/TripLonglineService.java | 10 ++++++++-- .../services/service/seine/ActivitySeineService.java | 5 +++-- .../services/service/seine/FloatingObjectService.java | 5 +++-- .../observe/services/service/seine/RouteService.java | 5 +++-- .../services/service/seine/SetSeineService.java | 5 +++-- .../services/service/seine/TripSeineService.java | 9 +++++++-- .../longline/ActivityLonglineServiceTopia.java | 9 +++++---- .../service/longline/SetLonglineServiceTopia.java | 10 +++++----- .../service/longline/TripLonglineServiceTopia.java | 19 +++++++++++++++++-- .../service/seine/ActivitySeineServiceTopia.java | 9 +++++---- .../service/seine/FloatingObjectServiceTopia.java | 9 +++++---- .../services/service/seine/RouteServiceTopia.java | 9 +++++---- .../services/service/seine/SetSeineServiceTopia.java | 9 +++++---- .../services/service/seine/TripSeineServiceTopia.java | 13 +++++++++++-- 25 files changed, 139 insertions(+), 74 deletions(-) diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/ActivityLonglineServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/ActivityLonglineServiceController.java index 09ef623..0c654b2 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/ActivityLonglineServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/ActivityLonglineServiceController.java @@ -65,6 +65,11 @@ public class ActivityLonglineServiceController extends ObserveAuthenticatedServi } @Override + public boolean exists(String activityLonglineId) { + return service.exists(activityLonglineId); + } + + @Override public FormDto<ActivityLonglineDto> loadToEdit(String activityLonglineId) { return service.loadToEdit(activityLonglineId); } @@ -83,9 +88,4 @@ public class ActivityLonglineServiceController extends ObserveAuthenticatedServi public boolean delete(String tripLonglineId, String activityLonglineId) { return service.delete(tripLonglineId, activityLonglineId); } - - @Override - public boolean exists(String id) { - return service.exists(id); - } } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/SetLonglineServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/SetLonglineServiceController.java index 0045c68..5e4a29d 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/SetLonglineServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/SetLonglineServiceController.java @@ -54,6 +54,11 @@ public class SetLonglineServiceController extends ObserveAuthenticatedServiceCon } @Override + public boolean exists(String setLonglineId) { + return service.exists(setLonglineId); + } + + @Override public FormDto<SetLonglineDto> loadToEdit(String setLonglineId) { return service.loadToEdit(setLonglineId); } @@ -73,8 +78,4 @@ public class SetLonglineServiceController extends ObserveAuthenticatedServiceCon service.delete(activityLonglineId, setLonglineId); } - @Override - public boolean exists(String id) { - return service.exists(id); - } } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/TripLonglineServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/TripLonglineServiceController.java index 14f0152..4f66c33 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/TripLonglineServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/TripLonglineServiceController.java @@ -76,6 +76,11 @@ public class TripLonglineServiceController extends ObserveAuthenticatedServiceCo } @Override + public boolean exists(String tripLonglineId) { + return service.exists(tripLonglineId); + } + + @Override public FormDto<TripLonglineDto> loadToEdit(String tripLonglineId) { return service.loadToEdit(tripLonglineId); } @@ -96,7 +101,7 @@ public class TripLonglineServiceController extends ObserveAuthenticatedServiceCo } @Override - public boolean exists(String id) { - return service.exists(id); + public int moveTripLonglineToProgram(String tripLonglineId, String programId) { + return service.moveTripLonglineToProgram(tripLonglineId, programId); } } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ActivitySeineServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ActivitySeineServiceController.java index f3c2b56..7339cf0 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ActivitySeineServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ActivitySeineServiceController.java @@ -65,6 +65,11 @@ public class ActivitySeineServiceController extends ObserveAuthenticatedServiceC } @Override + public boolean exists(String activitySeineId) { + return service.exists(activitySeineId); + } + + @Override public FormDto<ActivitySeineDto> loadToEdit(String activitySeineId) { return service.loadToEdit(activitySeineId); } @@ -84,8 +89,4 @@ public class ActivitySeineServiceController extends ObserveAuthenticatedServiceC service.delete(routeId, activitySeineId); } - @Override - public boolean exists(String id) { - return service.exists(id); - } } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/FloatingObjectServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/FloatingObjectServiceController.java index faaeb71..c4ed148 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/FloatingObjectServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/FloatingObjectServiceController.java @@ -59,6 +59,11 @@ public class FloatingObjectServiceController extends ObserveAuthenticatedService } @Override + public boolean exists(String floatingObjectId) { + return service.exists(floatingObjectId); + } + + @Override public FormDto<FloatingObjectDto> loadToEdit(String floatingObjectId) { return service.loadToEdit(floatingObjectId); } @@ -78,8 +83,4 @@ public class FloatingObjectServiceController extends ObserveAuthenticatedService service.delete(activitySeineId, floatingObjectId); } - @Override - public boolean exists(String id) { - return service.exists(id); - } } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/RouteServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/RouteServiceController.java index d293f45..5a42d30 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/RouteServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/RouteServiceController.java @@ -65,6 +65,11 @@ public class RouteServiceController extends ObserveAuthenticatedServiceControlle } @Override + public boolean exists(String routeId) { + return service.exists(routeId); + } + + @Override public FormDto<RouteDto> loadToEdit(String routeId) { return service.loadToEdit(routeId); } @@ -84,8 +89,4 @@ public class RouteServiceController extends ObserveAuthenticatedServiceControlle return service.delete(tripSeineId, routeId); } - @Override - public boolean exists(String id) { - return service.exists(id); - } } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/SetSeineServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/SetSeineServiceController.java index 4ece2e0..39e3f11 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/SetSeineServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/SetSeineServiceController.java @@ -53,6 +53,11 @@ public class SetSeineServiceController extends ObserveAuthenticatedServiceContro } @Override + public boolean exists(String setSeineId) { + return service.exists(setSeineId); + } + + @Override public FormDto<SetSeineDto> loadToEdit(String setSeineId) { return service.loadToEdit(setSeineId); } @@ -72,8 +77,4 @@ public class SetSeineServiceController extends ObserveAuthenticatedServiceContro service.delete(activitySeineId, setSeineId); } - @Override - public boolean exists(String id) { - return service.exists(id); - } } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/TripSeineServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/TripSeineServiceController.java index 2e33819..cf321f5 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/TripSeineServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/TripSeineServiceController.java @@ -71,6 +71,11 @@ public class TripSeineServiceController extends ObserveAuthenticatedServiceContr } @Override + public boolean exists(String tripSeineId) { + return service.exists(tripSeineId); + } + + @Override public FormDto<TripSeineDto> loadToEdit(String tripSeineId) { return service.loadToEdit(tripSeineId); } @@ -96,7 +101,7 @@ public class TripSeineServiceController extends ObserveAuthenticatedServiceContr } @Override - public boolean exists(String id) { - return service.exists(id); + public int moveTripSeineToProgram(String tripSeineId, String programId) { + return service.moveTripSeineToProgram(tripSeineId, programId); } } diff --git a/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaPersistenceContext.java b/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaPersistenceContext.java index 30db7d1..5b87f16 100644 --- a/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaPersistenceContext.java +++ b/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaPersistenceContext.java @@ -30,4 +30,8 @@ public class ObserveTopiaPersistenceContext extends AbstractObserveTopiaPersiste super(parameter); } + public void flush() { + getHibernateSupport().getHibernateSession().flush(); + } + } diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/ActivityLonglineService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/ActivityLonglineService.java index a41d822..bf22503 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/ActivityLonglineService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/ActivityLonglineService.java @@ -54,6 +54,9 @@ public interface ActivityLonglineService extends ObserveService { @ReadDataPermission ActivityLonglineDto loadDto(String activityLonglineId); + @ReadDataPermission + boolean exists(String activityLonglineId); + @WriteDataPermission FormDto<ActivityLonglineDto> loadToEdit(String activityLonglineId); @@ -73,6 +76,4 @@ public interface ActivityLonglineService extends ObserveService { */ boolean delete(String tripLonglineId, String activityLonglineId); - @ReadDataPermission - boolean exists(String id); } diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/SetLonglineService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/SetLonglineService.java index f79c983..9e97abe 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/SetLonglineService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/SetLonglineService.java @@ -47,6 +47,9 @@ public interface SetLonglineService extends ObserveService { @ReadDataPermission SetLonglineDto loadDto(String setLonglineId); + @ReadDataPermission + boolean exists(String setLonglineId); + @WriteDataPermission FormDto<SetLonglineDto> loadToEdit(String setLonglineId); @@ -63,6 +66,4 @@ public interface SetLonglineService extends ObserveService { @DeleteRequest void delete(String activityLonglineId, String setLonglineId); - @ReadDataPermission - boolean exists(String id); } diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/TripLonglineService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/TripLonglineService.java index 2bcee1d..45b37f5 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/TripLonglineService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/TripLonglineService.java @@ -61,6 +61,9 @@ public interface TripLonglineService extends ObserveService { @ReadDataPermission ReferenceDto<TripLonglineDto> loadReferenceToRead(String tripLonglineId); + @ReadDataPermission + boolean exists(String tripLonglineId); + @WriteDataPermission FormDto<TripLonglineDto> loadToEdit(String tripLonglineId); @@ -77,6 +80,9 @@ public interface TripLonglineService extends ObserveService { @DeleteRequest void delete(String tripLonglineId); - @ReadDataPermission - boolean exists(String id); + @Write + @WriteDataPermission + @PostRequest + int moveTripLonglineToProgram(String tripLonglineId, String programId); + } \ No newline at end of file diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineService.java index 12fa516..1fb15f8 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineService.java @@ -54,6 +54,9 @@ public interface ActivitySeineService extends ObserveService { @ReadDataPermission ActivitySeineDto loadDto(String activitySeineId); + @ReadDataPermission + boolean exists(String activitySeineId); + @WriteDataPermission FormDto<ActivitySeineDto> loadToEdit(String activitySeineId); @@ -70,6 +73,4 @@ public interface ActivitySeineService extends ObserveService { @DeleteRequest void delete(String routeId, String activitySeineId); - @ReadDataPermission - boolean exists(String id); } diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/FloatingObjectService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/FloatingObjectService.java index e41aa1d..7c473ea 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/FloatingObjectService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/FloatingObjectService.java @@ -50,6 +50,9 @@ public interface FloatingObjectService extends ObserveService { @ReadDataPermission FloatingObjectDto loadDto(String floatingObjectId); + @ReadDataPermission + boolean exists(String floatingObjectId); + @WriteDataPermission FormDto<FloatingObjectDto> loadToEdit(String floatingObjectId); @@ -66,6 +69,4 @@ public interface FloatingObjectService extends ObserveService { @DeleteRequest void delete(String activitySeineId, String floatingObjectId); - @ReadDataPermission - boolean exists(String id); } diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/RouteService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/RouteService.java index 01c8ffb..57d5e68 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/RouteService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/RouteService.java @@ -54,6 +54,9 @@ public interface RouteService extends ObserveService { @ReadDataPermission RouteDto loadDto(String routeId); + @ReadDataPermission + boolean exists(String routeId); + @WriteDataPermission FormDto<RouteDto> loadToEdit(String routeId); @@ -70,6 +73,4 @@ public interface RouteService extends ObserveService { @DeleteRequest boolean delete(String tripSeineId, String routeId); - @ReadDataPermission - boolean exists(String id); } diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/SetSeineService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/SetSeineService.java index c6a4ed1..456ed6a 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/SetSeineService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/SetSeineService.java @@ -46,6 +46,9 @@ public interface SetSeineService extends ObserveService { @ReadDataPermission SetSeineDto loadDto(String setSeineId); + @ReadDataPermission + boolean exists(String setSeineId); + @WriteDataPermission FormDto<SetSeineDto> loadToEdit(String setSeineId); @@ -62,6 +65,4 @@ public interface SetSeineService extends ObserveService { @DeleteRequest void delete(String activitySeineId, String setSeineId); - @ReadDataPermission - boolean exists(String id); } diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/TripSeineService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/TripSeineService.java index 8b54504..937cb3d 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/TripSeineService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/TripSeineService.java @@ -60,6 +60,9 @@ public interface TripSeineService extends ObserveService { @ReadDataPermission ReferenceDto<TripSeineDto> loadReferenceToRead(String tripSeineId); + @ReadDataPermission + boolean exists(String tripSeineId); + @WriteDataPermission FormDto<TripSeineDto> loadToEdit(String tripSeineId); @@ -76,6 +79,8 @@ public interface TripSeineService extends ObserveService { @DeleteRequest void delete(String tripSeineId); - @ReadDataPermission - boolean exists(String id); + @Write + @WriteDataPermission + @PostRequest + int moveTripSeineToProgram(String tripSeineId, String programId); } \ No newline at end of file diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/ActivityLonglineServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/ActivityLonglineServiceTopia.java index c401b7c..2fd8d7c 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/ActivityLonglineServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/ActivityLonglineServiceTopia.java @@ -121,6 +121,11 @@ public class ActivityLonglineServiceTopia extends ObserveServiceTopia implements } @Override + public boolean exists(String activityLonglineId) { + return existsEntity(ActivityLongline.class, activityLonglineId); + } + + @Override public FormDto<ActivityLonglineDto> loadToEdit(String activityLonglineId) { ActivityLongline activityLongline = loadEntity(ActivityLonglineDto.class, ActivityLongline.class, activityLonglineId); @@ -230,8 +235,4 @@ public class ActivityLonglineServiceTopia extends ObserveServiceTopia implements return wasEndDateUpdated; } - @Override - public boolean exists(String id) { - return existsEntity(ActivityLongline.class, id); - } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineServiceTopia.java index d87a5d3..c3cfa6f 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineServiceTopia.java @@ -74,6 +74,11 @@ public class SetLonglineServiceTopia extends ObserveServiceTopia implements SetL } @Override + public boolean exists(String setLonglineId) { + return existsEntity(SetLongline.class, setLonglineId); + } + + @Override public FormDto<SetLonglineDto> loadToEdit(String setLonglineId) { SetLongline setLongline = loadEntity(SetLonglineDto.class, SetLongline.class, setLonglineId); @@ -161,11 +166,6 @@ public class SetLonglineServiceTopia extends ObserveServiceTopia implements SetL } - @Override - public boolean exists(String id) { - return existsEntity(SetLongline.class, id); - } - protected Set<SetLonglineStubDto> getOtherSetLonglineDtos(ActivityLongline currentActivityLongline, SetLongline setLongline) { Set<SetLonglineStubDto> otherSetLonglineDtos = Sets.newHashSet(); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineServiceTopia.java index a1576ab..440325f 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineServiceTopia.java @@ -24,6 +24,7 @@ package fr.ird.observe.services.service.longline; import com.google.common.base.Optional; import com.google.common.collect.Sets; +import fr.ird.observe.ObserveTopiaPersistenceContext; import fr.ird.observe.entities.constants.ReferenceLocale; import fr.ird.observe.entities.longline.TripLongline; import fr.ird.observe.entities.longline.TripLonglineTopiaDao; @@ -151,6 +152,11 @@ public class TripLonglineServiceTopia extends ObserveServiceTopia implements Tri } @Override + public boolean exists(String tripLonglineId) { + return existsEntity(TripLongline.class, tripLonglineId); + } + + @Override public FormDto<TripLonglineDto> loadToEdit(String tripLonglineId) { TripLongline tripLongline = loadEntity(TripLonglineDto.class, TripLongline.class, tripLonglineId); @@ -206,7 +212,16 @@ public class TripLonglineServiceTopia extends ObserveServiceTopia implements Tri } @Override - public boolean exists(String id) { - return existsEntity(TripLongline.class, id); + public int moveTripLonglineToProgram(String tripLonglineId, String programId) { + TripLongline tripLongline = loadEntity(TripLonglineDto.class, TripLongline.class, tripLonglineId); + Program program = loadEntity(ProgramDto.class, Program.class, programId); + + tripLongline.setProgram(program); + saveEntity(TripLongline.class, tripLongline); + + ObserveTopiaPersistenceContext persistenceContext = serviceContext.getTopiaPersistenceContext(); + persistenceContext.flush(); + + return getTripLonglinePositionInProgram(programId, tripLonglineId); } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineServiceTopia.java index e3d438e..a822aa3 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineServiceTopia.java @@ -128,6 +128,11 @@ public class ActivitySeineServiceTopia extends ObserveServiceTopia implements Ac } @Override + public boolean exists(String activitySeineId) { + return existsEntity(ActivitySeine.class, activitySeineId); + } + + @Override public FormDto<ActivitySeineDto> loadToEdit(String activitySeineId) { ActivitySeine activitySeine = loadEntity(ActivitySeineDto.class, ActivitySeine.class, activitySeineId); @@ -229,8 +234,4 @@ public class ActivitySeineServiceTopia extends ObserveServiceTopia implements Ac } - @Override - public boolean exists(String id) { - return existsEntity(ActivitySeine.class, id); - } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/FloatingObjectServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/FloatingObjectServiceTopia.java index 8b13f17..6674efc 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/FloatingObjectServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/FloatingObjectServiceTopia.java @@ -99,6 +99,11 @@ public class FloatingObjectServiceTopia extends ObserveServiceTopia implements F } @Override + public boolean exists(String floatingObjectId) { + return existsEntity(FloatingObject.class, floatingObjectId); + } + + @Override public FormDto<FloatingObjectDto> loadToEdit(String floatingObjectId) { FloatingObject floatingObject = loadEntity(FloatingObjectDto.class, FloatingObject.class, floatingObjectId); @@ -153,8 +158,4 @@ public class FloatingObjectServiceTopia extends ObserveServiceTopia implements F } - @Override - public boolean exists(String id) { - return existsEntity(FloatingObject.class, id); - } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/RouteServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/RouteServiceTopia.java index 5d2586f..35041e1 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/RouteServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/RouteServiceTopia.java @@ -143,6 +143,11 @@ public class RouteServiceTopia extends ObserveServiceTopia implements RouteServi } @Override + public boolean exists(String routeId) { + return existsEntity(Route.class, routeId); + } + + @Override public FormDto<RouteDto> loadToEdit(String routeId) { Route route = loadEntity(RouteDto.class, Route.class, routeId); @@ -249,8 +254,4 @@ public class RouteServiceTopia extends ObserveServiceTopia implements RouteServi } - @Override - public boolean exists(String id) { - return existsEntity(Route.class, id); - } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/SetSeineServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/SetSeineServiceTopia.java index 630aa11..9c7bc1a 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/SetSeineServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/SetSeineServiceTopia.java @@ -68,6 +68,11 @@ public class SetSeineServiceTopia extends ObserveServiceTopia implements SetSein } @Override + public boolean exists(String setSeineId) { + return existsEntity(SetSeine.class, setSeineId); + } + + @Override public FormDto<SetSeineDto> loadToEdit(String setSeineId) { SetSeine setSeine = loadEntity(SetSeineDto.class, SetSeine.class, setSeineId); @@ -151,8 +156,4 @@ public class SetSeineServiceTopia extends ObserveServiceTopia implements SetSein //FIXME kmorin : faudrait pas sauver quelquechose là ? parcequ'on n'a rien supprimé... } - @Override - public boolean exists(String id) { - return existsEntity(SetSeine.class, id); - } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TripSeineServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TripSeineServiceTopia.java index 7a82317..054f0f2 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TripSeineServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TripSeineServiceTopia.java @@ -146,6 +146,11 @@ public class TripSeineServiceTopia extends ObserveServiceTopia implements TripSe } @Override + public boolean exists(String tripSeineId) { + return existsEntity(TripSeine.class, tripSeineId); + } + + @Override public FormDto<TripSeineDto> loadToEdit(String tripSeineId) { TripSeine tripSeine = loadEntity(TripSeineDto.class, TripSeine.class, tripSeineId); @@ -203,7 +208,11 @@ public class TripSeineServiceTopia extends ObserveServiceTopia implements TripSe } @Override - public boolean exists(String id) { - return existsEntity(TripSeine.class, id); + public int moveTripSeineToProgram(String tripSeineId, String programId) { + TripSeine tripSeine = loadEntity(TripSeineDto.class, TripSeine.class, tripSeineId); + Program program = loadEntity(ProgramDto.class, Program.class, programId); + tripSeine.setProgram(program); + saveEntity(TripSeine.class, tripSeine); + return getTripSeinePositionInProgram(programId, tripSeineId); } } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit bbe8e59752d045db56692957a7275eebe0bd332d Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 13:40:09 2015 +0100 suppression de l'ouverture du programme s'il n'y a que lui d'ouvert --- .../src/main/java/fr/ird/observe/business/db/DataContext.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/business/db/DataContext.java b/observe-application-swing/src/main/java/fr/ird/observe/business/db/DataContext.java index 0eda1ae..1e7d9e2 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/business/db/DataContext.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/business/db/DataContext.java @@ -688,6 +688,12 @@ public class DataContext extends AbstractSerializableBean { } } + // if only the program is open, remove it + if (realSelection.size() == 1) { + setOpenProgramId(null); + realSelection.clear(); + } + if (oldSelection.equals(realSelection)) { // rien a change -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit 58e70bc87bb89b64b11e90f34e98e65902a18cd8 Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 13:41:45 2015 +0100 réactivation de l'action pour changer une marée de programme --- .../tree/ObserveNavigationTreeShowPopupAction.java | 88 ++++++++++++---------- .../actions/ChangeTripProgramActionListener.java | 52 ++++++------- 2 files changed, 74 insertions(+), 66 deletions(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java index 5c88f99..3712097 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java @@ -23,11 +23,20 @@ package fr.ird.observe.ui.tree; */ import com.google.common.base.Preconditions; +import com.google.common.collect.Iterables; +import com.google.common.collect.Lists; import fr.ird.observe.ObserveSwingApplicationContext; import fr.ird.observe.db.ObserveSwingDataSource; +import fr.ird.observe.services.dto.IdDtos; +import fr.ird.observe.services.dto.ReferenceDto; +import fr.ird.observe.services.dto.ReferenceDtos; +import fr.ird.observe.services.dto.constants.GearType; import fr.ird.observe.services.dto.referential.ProgramDto; +import fr.ird.observe.services.service.ReferentialService; +import fr.ird.observe.ui.tree.actions.ChangeTripProgramActionListener; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.nuiton.decorator.Decorator; import javax.swing.JMenuItem; import javax.swing.JPopupMenu; @@ -42,6 +51,7 @@ import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; +import java.util.LinkedHashSet; import java.util.List; /** @@ -224,63 +234,63 @@ public class ObserveNavigationTreeShowPopupAction { log.info("Will load popup for trip node."); } + ObserveSwingApplicationContext applicationContext = ObserveSwingApplicationContext.get(); + if (selectedNode.isOpen()) { - closeTripAction.putClientProperty("ui", ObserveSwingApplicationContext.get().getSelectedContentUI()); + closeTripAction.putClientProperty("ui", applicationContext.getSelectedContentUI()); popup.add(closeTripAction); popup.add(moveTripPopup); moveTripPopup.removeAll(); - // DataService dataService = treeHelper.getDataService(); - ObserveSwingDataSource dataSource = treeHelper.getDataProvider().getDataSource(); + // get the available program for the trip String tripId = selectedNode.getId(); + GearType gearType = IdDtos.isLonglineId(tripId) ? GearType.longline : GearType.seine; + + ObserveSwingDataSource dataSource = treeHelper.getDataProvider().getDataSource(); + + LinkedHashSet<ReferenceDto> allPrograms = applicationContext.newService(ReferentialService.class) + .getReferentialReferenceSet(ProgramDto.class) + .getReference(); + List<ReferenceDto> programs = + Lists.newArrayList(Iterables.filter(allPrograms, + ReferenceDtos.newLabelValuePredicate(ProgramDto.PROPERTY_GEAR_TYPE, + gearType))); + + String openProgramId = applicationContext.getDataContext().getOpenProgramId(); + + Decorator<ReferenceDto> programDecorator = applicationContext.getDecorator(ReferenceDto.class, + ProgramDto.class.getSimpleName()); + for (ReferenceDto program : programs) { - List<ProgramDto> programs; - - //FIXME - // try { - // - // programs = dataService.getPossibleProgramsForTrip(dataSource, tripId); - // ProgramDtos.sort(programs); - // - // } catch (DataSourceException e) { - // throw new ObserveTechnicalException("Can't get possible programs for trip " + tripId, e); - // } - // - // String openProgramId = dataService.getDataContext().getOpenProgramId(); - // - // Decorator<Program> programDecorator = dataService.getDecoratorService().getDecoratorByType(Program.class); - // for (Program program : programs) { - // - // String programId = program.getTopiaId(); - // - // if (!programId.equals(openProgramId)) { - // - // JMenuItem item = new JMenuItem(programDecorator.toString(program)); - // item.setName(programId); - // item.addActionListener(new ChangeTripProgramActionListener(treeHelper, - // dataService, - // dataSource, - // tripId, - // programId)); - // - // moveTripPopup.add(item); - // - // } - // - // } + String programId = program.getId(); + + if (!programId.equals(openProgramId)) { + + JMenuItem item = new JMenuItem(programDecorator.toString(program)); + item.setName(programId); + item.addActionListener(new ChangeTripProgramActionListener(treeHelper, + dataSource, + tripId, + programId)); + + moveTripPopup.add(item); + + } + + } } else { - openTripAction.putClientProperty("ui", ObserveSwingApplicationContext.get().getSelectedContentUI()); + openTripAction.putClientProperty("ui", applicationContext.getSelectedContentUI()); popup.add(openTripAction); } - deleteTripAction.putClientProperty("ui", ObserveSwingApplicationContext.get().getSelectedContentUI()); + deleteTripAction.putClientProperty("ui", applicationContext.getSelectedContentUI()); deleteTripAction.setEnabled(selectedNode.isOpen()); popup.add(deleteTripAction); diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/actions/ChangeTripProgramActionListener.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/actions/ChangeTripProgramActionListener.java index 8e8754a..02d2f6f 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/actions/ChangeTripProgramActionListener.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/actions/ChangeTripProgramActionListener.java @@ -23,7 +23,11 @@ package fr.ird.observe.ui.tree.actions; */ +import fr.ird.observe.ObserveSwingApplicationContext; import fr.ird.observe.db.ObserveSwingDataSource; +import fr.ird.observe.services.dto.IdDtos; +import fr.ird.observe.services.service.longline.TripLonglineService; +import fr.ird.observe.services.service.seine.TripSeineService; import fr.ird.observe.ui.tree.ObserveNode; import fr.ird.observe.ui.tree.ObserveTreeHelper; import org.apache.commons.logging.Log; @@ -49,23 +53,15 @@ public class ChangeTripProgramActionListener implements ActionListener { private final ObserveTreeHelper treeHelper; - //FIXME -// private final DataService dataService; - private final ObserveSwingDataSource dataSource; public ChangeTripProgramActionListener(ObserveTreeHelper treeHelper, - //FIXME -// DataService dataService, - Object dataService, ObserveSwingDataSource dataSource, String tripId, String programId) { this.tripId = tripId; this.programId = programId; this.treeHelper = treeHelper; - //FIXME -// this.dataService = dataService; this.dataSource = dataSource; } @@ -75,25 +71,24 @@ public class ChangeTripProgramActionListener implements ActionListener { ObserveNode tripNode = treeHelper.getSelectedNode(); ObserveNode rootNode = treeHelper.getRootNode(); ObserveNode newProgramNode = treeHelper.getChild(rootNode, programId); - ObserveNode oldProgramNode = treeHelper.getChild(rootNode, tripNode.getParent().getId()); - - //FIXME -// try { -// dataService.moveTripToProgram(dataSource, tripId, programId); -// } catch (DataSourceException e) { -// throw new ObserveTechnicalException("Can't change trip " + tripId + " to program " + programId, e); -// } - - //FIXME -// int position; - int position = -1; - - //FIXME -// try { -// position = dataService.getOpenablePosition(dataSource, programId, tripId); -// } catch (DataSourceException e) { -// throw new ObserveTechnicalException("Can't get trip " + tripId + " position for program " + programId, e); -// } + String oldProgramId = tripNode.getParent().getId(); + ObserveNode oldProgramNode = treeHelper.getChild(rootNode, oldProgramId); + + ObserveSwingApplicationContext applicationContext = ObserveSwingApplicationContext.get(); + + applicationContext.getOpenDataManager().closeProgram(oldProgramId); + + int position; + + + if (IdDtos.isTripLonglineId(tripId)) { + TripLonglineService service = applicationContext.newService(TripLonglineService.class); + position = service.moveTripLonglineToProgram(tripId, programId); + + } else { + TripSeineService service = applicationContext.newService(TripSeineService.class); + position = service.moveTripSeineToProgram(tripId, programId); + } treeHelper.removeNode(tripNode); @@ -108,6 +103,9 @@ public class ChangeTripProgramActionListener implements ActionListener { treeHelper.insertNode(newProgramNode, tripNode, position); newTripNode = tripNode; } + + applicationContext.getOpenDataManager().openProgram(programId); + treeHelper.reloadNode(oldProgramNode, true); treeHelper.reloadNode(newProgramNode, true); // treeHelper.refreshNode(oldProgramNode, true); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit 6ebc9b945be162a92888f6d6556f21472a8d80e3 Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 13:56:51 2015 +0100 extraction de la méthode de filtrage dans le dtos --- .../ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java | 8 ++------ .../java/fr/ird/observe/services/dto/referential/ProgramDtos.java | 5 +++++ 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java index 3712097..c4eb58c 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNavigationTreeShowPopupAction.java @@ -23,15 +23,14 @@ package fr.ird.observe.ui.tree; */ import com.google.common.base.Preconditions; -import com.google.common.collect.Iterables; import com.google.common.collect.Lists; import fr.ird.observe.ObserveSwingApplicationContext; import fr.ird.observe.db.ObserveSwingDataSource; import fr.ird.observe.services.dto.IdDtos; import fr.ird.observe.services.dto.ReferenceDto; -import fr.ird.observe.services.dto.ReferenceDtos; import fr.ird.observe.services.dto.constants.GearType; import fr.ird.observe.services.dto.referential.ProgramDto; +import fr.ird.observe.services.dto.referential.ProgramDtos; import fr.ird.observe.services.service.ReferentialService; import fr.ird.observe.ui.tree.actions.ChangeTripProgramActionListener; import org.apache.commons.logging.Log; @@ -255,10 +254,7 @@ public class ObserveNavigationTreeShowPopupAction { LinkedHashSet<ReferenceDto> allPrograms = applicationContext.newService(ReferentialService.class) .getReferentialReferenceSet(ProgramDto.class) .getReference(); - List<ReferenceDto> programs = - Lists.newArrayList(Iterables.filter(allPrograms, - ReferenceDtos.newLabelValuePredicate(ProgramDto.PROPERTY_GEAR_TYPE, - gearType))); + List<ReferenceDto> programs = Lists.newArrayList(ProgramDtos.filterReferencesByGearType(allPrograms, gearType)); String openProgramId = applicationContext.getDataContext().getOpenProgramId(); diff --git a/observe-services-model/src/main/java/fr/ird/observe/services/dto/referential/ProgramDtos.java b/observe-services-model/src/main/java/fr/ird/observe/services/dto/referential/ProgramDtos.java index eb0b619..03c2e3c 100644 --- a/observe-services-model/src/main/java/fr/ird/observe/services/dto/referential/ProgramDtos.java +++ b/observe-services-model/src/main/java/fr/ird/observe/services/dto/referential/ProgramDtos.java @@ -1,5 +1,6 @@ package fr.ird.observe.services.dto.referential; +import com.google.common.collect.Iterables; import com.google.common.collect.Lists; import fr.ird.observe.services.dto.ReferenceDto; import fr.ird.observe.services.dto.ReferenceDtos; @@ -62,4 +63,8 @@ public class ProgramDtos extends AbstractProgramDtos { return reference; } + public static Iterable<ReferenceDto> filterReferencesByGearType(Iterable<ReferenceDto> programs, GearType gearType) { + return Iterables.filter(programs, ReferenceDtos.newLabelValuePredicate(ProgramDto.PROPERTY_GEAR_TYPE, gearType)); + } + } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit e11cad851e1a47bdb500dbb5b774f841b83e616e Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 17:06:25 2015 +0100 déplacement des marées longline sélectionnées dans un dossier aléatoire (refs #7621) --- .../observe/ObserveSwingApplicationContext.java | 2 + .../ui/actions/shared/MoveTripsUIAction.java | 223 +++++++++++++++++++++ .../content/list/impl/longline/TripLonglinesUI.css | 12 ++ .../list/impl/longline/TripLonglinesUI.jaxx | 20 ++ .../list/impl/longline/TripLonglinesUIModel.java | 33 +++ .../actions/ChangeTripProgramActionListener.java | 1 - .../observe-application-swing_en_GB.properties | 4 + .../observe-application-swing_es_ES.properties | 4 + .../observe-application-swing_fr_FR.properties | 4 + .../v1/longline/TripLonglineServiceController.java | 7 + .../service/longline/TripLonglineService.java | 7 + .../service/longline/TripLonglineServiceTopia.java | 22 ++ 12 files changed, 338 insertions(+), 1 deletion(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java b/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java index 7cdd000..ded603a 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java @@ -68,6 +68,7 @@ import fr.ird.observe.ui.actions.shared.DeleteDataUIAction; import fr.ird.observe.ui.actions.shared.DeleteReferenceUIAction; import fr.ird.observe.ui.actions.shared.GoDownUIAction; import fr.ird.observe.ui.actions.shared.GoUpUIAction; +import fr.ird.observe.ui.actions.shared.MoveTripsUIAction; import fr.ird.observe.ui.actions.shared.ReOpenUIAction; import fr.ird.observe.ui.actions.shared.ResetEditUIAction; import fr.ird.observe.ui.actions.shared.SaveEditUIAction; @@ -907,6 +908,7 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im registerMainAction(actionMap, new SaveEditUIAction(ui)); registerMainAction(actionMap, new DeleteDataUIAction(ui)); registerMainAction(actionMap, new DeleteReferenceUIAction(ui)); + registerMainAction(actionMap, new MoveTripsUIAction(ui)); } public void registerMainAction(ActionMap actionMap, AbstractUIAction action) { diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripsUIAction.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripsUIAction.java new file mode 100644 index 0000000..1ade193 --- /dev/null +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripsUIAction.java @@ -0,0 +1,223 @@ +/* + * #%L + * ObServe :: Swing + * %% + * Copyright (C) 2008 - 2010 IRD, Codelutin, Tony Chemit + * %% + * 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% + */ +package fr.ird.observe.ui.actions.shared; + +import com.google.common.collect.Lists; +import fr.ird.observe.ObserveOpenDataManager; +import fr.ird.observe.ObserveSwingApplicationContext; +import fr.ird.observe.services.dto.ReferenceDto; +import fr.ird.observe.services.dto.ReferenceDtos; +import fr.ird.observe.services.dto.constants.GearType; +import fr.ird.observe.services.dto.longline.ActivityLonglineDto; +import fr.ird.observe.services.dto.referential.ProgramDto; +import fr.ird.observe.services.dto.referential.ProgramDtos; +import fr.ird.observe.services.service.ReferentialService; +import fr.ird.observe.services.service.longline.TripLonglineService; +import fr.ird.observe.ui.ObserveMainUI; +import fr.ird.observe.ui.content.ContentUI; +import fr.ird.observe.ui.content.list.impl.longline.ActivityLonglinesUI; +import fr.ird.observe.ui.content.list.impl.longline.TripLonglinesUI; +import fr.ird.observe.ui.content.list.impl.longline.TripLonglinesUIModel; +import fr.ird.observe.ui.content.open.impl.longline.ActivityLonglineUI; +import fr.ird.observe.ui.tree.ObserveNode; +import fr.ird.observe.ui.tree.ObserveTreeHelper; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import javax.swing.JComponent; +import javax.swing.JTree; +import javax.swing.SwingUtilities; +import javax.swing.tree.TreePath; +import java.awt.event.ActionEvent; +import java.util.ArrayList; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Random; + +import static org.nuiton.i18n.I18n.n; + +/** + * Action pour fermer l'objet sous-jacent à l'écran. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 1.4 + */ +public class MoveTripsUIAction extends AbstractUIAction { + + private static final long serialVersionUID = 1L; + + /** + * Logger. + */ + private static final Log log = LogFactory.getLog(MoveTripsUIAction.class); + + public static final String ACTION_NAME = "moveTrips"; + + public MoveTripsUIAction(ObserveMainUI mainUI) { + super(mainUI, + ACTION_NAME, + n("observe.action.move.trips"), + n("observe.action.move.trips.tip"), + "close" + ); + } + + @Override + public void actionPerformed(final ActionEvent e) { + + SwingUtilities.invokeLater(new Runnable() { + + @Override + public void run() { + JComponent c = (JComponent) e.getSource(); + ContentUI<?> ui = (ContentUI<?>) + c.getClientProperty("ui"); + if (ui == null) { + throw new IllegalStateException( + "could not find client property " + + "ui on component" + c); + } + + ObserveSwingApplicationContext applicationContext = ObserveSwingApplicationContext.get(); + + if (ui instanceof TripLonglinesUI) { + + // cas particulier pour l'écran des marées longline + + LinkedHashSet<ReferenceDto> allPrograms = applicationContext.newService(ReferentialService.class) + .getReferentialReferenceSet(ProgramDto.class) + .getReference(); + + List<ReferenceDto> programs = Lists.newArrayList(ProgramDtos.filterReferencesByGearType(allPrograms, GearType.longline)); + +// int programIndex = JOptionPane.showOptionDialog(ui, "mesage", "test", +// JOptionPane.OK_CANCEL_OPTION, +// JOptionPane.QUESTION_MESSAGE, +// null, +// programs.toArray(new ReferenceDto[programs.size()]), +// null); + int programIndex = new Random().nextInt(programs.size()); + + ReferenceDto program = programs.get(programIndex); + String programId = program.getId(); + + TripLonglinesUI tripLonglinesUI = (TripLonglinesUI) ui; + TripLonglinesUIModel model = tripLonglinesUI.getModel(); + List<ReferenceDto> selectedDatas = model.getSelectedDatas(); + + ObserveOpenDataManager openDataManager = applicationContext.getOpenDataManager(); + ObserveTreeHelper treeHelper = getMainUI().getTreeHelper(); + + ObserveNode oldProgramNode = treeHelper.getSelectedNode(); + String oldProgramId = oldProgramNode.getId(); + + ObserveNode rootNode = treeHelper.getRootNode(); + ObserveNode newProgramNode = treeHelper.getChild(rootNode, programId); + + List<String> tripIds = Lists.transform(selectedDatas, ReferenceDtos.getIdFunction()); + TripLonglineService service = applicationContext.newService(TripLonglineService.class); + List<Integer> positions = service.moveTripLonglinesToProgram(tripIds, programId); + + for (int i = 0, s = positions.size() ; i < s ; i++) { + + String tripId = tripIds.get(i); + ObserveNode tripNode = treeHelper.getChild(oldProgramNode, tripId); + boolean wasOpen = tripNode.isOpen(); + treeHelper.removeNode(tripNode); + + if (wasOpen) { + openDataManager.closeProgram(oldProgramId); + openDataManager.openProgram(programId); + } + + ObserveNode newTripNode = treeHelper.getChild(newProgramNode, tripId); + + if (newTripNode == null) { + + // create it + if (log.isInfoEnabled()) { + log.info("Insert trip node: "); + } + treeHelper.insertNode(newProgramNode, tripNode, positions.get(i)); + } + } + + List<ReferenceDto> data = new ArrayList<>(model.getData()); + data.removeAll(model.getSelectedDatas()); + model.setData(data); + + treeHelper.reloadNode(oldProgramNode, true); + treeHelper.reloadNode(newProgramNode, true); + treeHelper.selectNode(newProgramNode); + + return; + } + + if (ui instanceof ActivityLonglinesUI) { + + // cas particulier pour l'écran des activités + + JTree tree = getMainUI().getNavigation(); + ObserveTreeHelper treeHelper = getMainUI().getTreeHelper(); + + // recuperation du noeud courant (activitys) + ObserveNode node = treeHelper.getSelectedNode(); + + boolean wasCollapsed = isOpenActivityNodeCollapsed( + tree, + treeHelper, + getMainUI().getDataContext() + ); + + // selection du noeud de l'activity ouverte + treeHelper.selectOpenNode(getMainUI(), ActivityLonglineDto.class); + + // on conserve le path de l'activity + TreePath path = tree.getSelectionPath(); + + // recuperation de l'écran associé + ActivityLonglineUI selectedUI = (ActivityLonglineUI) + ObserveSwingApplicationContext.get().getSelectedContentUI(); + + // fermeture de l'activity + selectedUI.closeData(); + + if (wasCollapsed) { + + // on ferme le noeud de l'activity (qui a ete ouvert + // lors de la selection de celle-ci) + tree.collapsePath(path); + } + + // retour sur le noeud des activitys + treeHelper.selectNode(node); + + return; + } + + throw new IllegalStateException("Can not come here!"); + } + }); + + } + +} diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.css b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.css index 9403431..2856efb 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.css +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.css @@ -20,14 +20,20 @@ * #L% */ +#listSelectionModel { + selectionMode:{ListSelectionModel.MULTIPLE_INTERVAL_SELECTION}; +} + #gotoSelectedChild { _text:{t("observe.action.goto.selected.maree")}; _toolTipText:{t("observe.action.goto.selected.maree.tip")}; + enabled:{model.getSelectedDatas() != null && model.getSelectedDatas().size() == 1}; } #reopenChild { _text:{t("observe.action.reopen.selected.maree")}; _toolTipText:{t("observe.action.reopen.selected.maree.tip")}; + enabled:{model.getSelectedDatas() != null && model.getSelectedDatas().size() == 1}; } #createChild { @@ -35,4 +41,10 @@ toolTipText:"observe.action.create.maree.tip"; } +#moveSelectedTrips { + text:"observe.action.move.trips"; + toolTipText:"observe.action.move.trips.tip"; + enabled:{model.getSelectedDatas() != null}; + _observeAction:{MoveTripsUIAction.ACTION_NAME}; +} diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.jaxx b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.jaxx index 5256c29..1f38e94 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.jaxx +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.jaxx @@ -24,16 +24,30 @@ emptyListMessage='{n("observe.message.no.trip.for.program")}'> <import> + fr.ird.observe.services.dto.ReferenceDto fr.ird.observe.services.dto.longline.ActivityLonglineDto fr.ird.observe.services.dto.longline.TripLonglineDto fr.ird.observe.services.dto.referential.ProgramDto fr.ird.observe.ui.actions.shared.SelectOpenNodeUIAction + fr.ird.observe.ui.actions.shared.MoveTripsUIAction + + java.util.List + + javax.swing.ListSelectionModel static org.nuiton.i18n.I18n.n </import> <style source="CommonListUI.css"/> + <script><![CDATA[ + +public final List<ReferenceDto> getSelectedDatas() { + return (List<ReferenceDto>) list.getSelectedValuesList(); +} + +]]></script> + <!-- handler --> <TripLonglinesUIHandler id='handler' constructorParams='this'/> @@ -43,6 +57,9 @@ <!-- edit bean --> <ProgramDto id='bean'/> + <ListSelectionModel id='listSelectionModel' + onValueChanged='if (!event.getValueIsAdjusting()) getModel().setSelectedDatas(getSelectedDatas());'/> + <!-- override generic actions --> <JButton id='gotoSelectedChild'/> <JButton id='reopenChild'/> @@ -59,6 +76,9 @@ <cell> <JButton id='gotoOpenActivity2' styleClass='gotoOpenActivity2'/> </cell> + <cell> + <JButton id='moveSelectedTrips'/> + </cell> </row> </Table> diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUIModel.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUIModel.java index c704361..a3be385 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUIModel.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUIModel.java @@ -22,9 +22,14 @@ package fr.ird.observe.ui.content.list.impl.longline; * #L% */ +import fr.ird.observe.services.dto.ReferenceDto; import fr.ird.observe.services.dto.longline.TripLonglineDto; import fr.ird.observe.services.dto.referential.ProgramDto; import fr.ird.observe.ui.content.list.ContentListUIModel; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import java.util.List; /** * Created on 9/26/14. @@ -36,8 +41,36 @@ public class TripLonglinesUIModel extends ContentListUIModel<ProgramDto, TripLon private static final long serialVersionUID = 1L; + /** + * Logger. + */ + private static final Log log = LogFactory.getLog(TripLonglinesUIModel.class); + + public static final String PROPERTY_SELECTED_DATAS = "selectedDatas"; + + /** entité sélectionnée dans la liste */ + protected List<ReferenceDto> selectedDatas; + public TripLonglinesUIModel() { super(ProgramDto.class, TripLonglineDto.class); } + public List<ReferenceDto> getSelectedDatas() { + return selectedDatas; + } + + public void setSelectedDatas(List<ReferenceDto> selectedDatas) { + List<ReferenceDto> old = getSelectedDatas(); + this.selectedDatas = selectedDatas; + if (log.isDebugEnabled()) { + log.debug("New selected datas : " + selectedDatas); + } + firePropertyChange(PROPERTY_SELECTED_DATAS, old, selectedDatas); + } + + @Override + public void setData(List<ReferenceDto> data) { + super.setData(data); + setSelectedDatas(null); + } } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/actions/ChangeTripProgramActionListener.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/actions/ChangeTripProgramActionListener.java index 02d2f6f..cdf5587 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/actions/ChangeTripProgramActionListener.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/actions/ChangeTripProgramActionListener.java @@ -80,7 +80,6 @@ public class ChangeTripProgramActionListener implements ActionListener { int position; - if (IdDtos.isTripLonglineId(tripId)) { TripLonglineService service = applicationContext.newService(TripLonglineService.class); position = service.moveTripLonglineToProgram(tripId, programId); diff --git a/observe-application-swing/src/main/resources/i18n/observe-application-swing_en_GB.properties b/observe-application-swing/src/main/resources/i18n/observe-application-swing_en_GB.properties index 714463d..bf26992 100644 --- a/observe-application-swing/src/main/resources/i18n/observe-application-swing_en_GB.properties +++ b/observe-application-swing/src/main/resources/i18n/observe-application-swing_en_GB.properties @@ -280,6 +280,10 @@ observe.action.mitigationType.detail.tip= observe.action.mitigationType.modify.tip= observe.action.mitigationType.save.tip= observe.action.modify=Modify +observe.action.move.maree= +observe.action.move.maree.tip= +observe.action.move.trips= +observe.action.move.trips.tip= observe.action.new.entry=Add observe.action.new.entry.tip= observe.action.objectFate.create.tip= diff --git a/observe-application-swing/src/main/resources/i18n/observe-application-swing_es_ES.properties b/observe-application-swing/src/main/resources/i18n/observe-application-swing_es_ES.properties index b237af9..9faa438 100644 --- a/observe-application-swing/src/main/resources/i18n/observe-application-swing_es_ES.properties +++ b/observe-application-swing/src/main/resources/i18n/observe-application-swing_es_ES.properties @@ -280,6 +280,10 @@ observe.action.mitigationType.detail.tip= observe.action.mitigationType.modify.tip= observe.action.mitigationType.save.tip= observe.action.modify=Modificar +observe.action.move.maree= +observe.action.move.maree.tip= +observe.action.move.trips= +observe.action.move.trips.tip= observe.action.new.entry=Nuevo observe.action.new.entry.tip=Crear una nueva entrada observe.action.objectFate.create.tip=Crear un nuevo devenir de objeto diff --git a/observe-application-swing/src/main/resources/i18n/observe-application-swing_fr_FR.properties b/observe-application-swing/src/main/resources/i18n/observe-application-swing_fr_FR.properties index 83e1f91..6772b97 100644 --- a/observe-application-swing/src/main/resources/i18n/observe-application-swing_fr_FR.properties +++ b/observe-application-swing/src/main/resources/i18n/observe-application-swing_fr_FR.properties @@ -280,6 +280,10 @@ observe.action.mitigationType.detail.tip=Voir les détails du type de mesure d'a observe.action.mitigationType.modify.tip=Modifier le type de mesure d'atténuation sélectionné observe.action.mitigationType.save.tip=Sauver les modifications du type de mesure d'atténuation observe.action.modify=Modifier +observe.action.move.maree= +observe.action.move.maree.tip= +observe.action.move.trips= +observe.action.move.trips.tip= observe.action.new.entry=Nouveau observe.action.new.entry.tip=Créer une nouvelle entrée observe.action.objectFate.create.tip=Créer un nouveau devenir objet diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/TripLonglineServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/TripLonglineServiceController.java index 4f66c33..e837d57 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/TripLonglineServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/TripLonglineServiceController.java @@ -31,6 +31,8 @@ import fr.ird.observe.services.dto.longline.TripLonglineDto; import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.service.longline.TripLonglineService; +import java.util.List; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -104,4 +106,9 @@ public class TripLonglineServiceController extends ObserveAuthenticatedServiceCo public int moveTripLonglineToProgram(String tripLonglineId, String programId) { return service.moveTripLonglineToProgram(tripLonglineId, programId); } + + @Override + public List<Integer> moveTripLonglinesToProgram(List<String> tripLonglineIds, String programId) { + return service.moveTripLonglinesToProgram(tripLonglineIds, programId); + } } diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/TripLonglineService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/TripLonglineService.java index 45b37f5..3c5e492 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/TripLonglineService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/TripLonglineService.java @@ -35,6 +35,8 @@ import fr.ird.observe.services.spi.ReadDataPermission; import fr.ird.observe.services.spi.Write; import fr.ird.observe.services.spi.WriteDataPermission; +import java.util.List; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -85,4 +87,9 @@ public interface TripLonglineService extends ObserveService { @PostRequest int moveTripLonglineToProgram(String tripLonglineId, String programId); + @Write + @WriteDataPermission + @PostRequest + List<Integer> moveTripLonglinesToProgram(List<String> tripLonglineIds, String programId); + } \ No newline at end of file diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineServiceTopia.java index 440325f..a7c7691 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineServiceTopia.java @@ -42,6 +42,7 @@ import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.result.SaveResultDtos; import org.nuiton.util.DateUtil; +import java.util.ArrayList; import java.util.Collections; import java.util.Date; import java.util.LinkedHashSet; @@ -224,4 +225,25 @@ public class TripLonglineServiceTopia extends ObserveServiceTopia implements Tri return getTripLonglinePositionInProgram(programId, tripLonglineId); } + + @Override + public List<Integer> moveTripLonglinesToProgram(List<String> tripLonglineIds, String programId) { + Program program = loadEntity(ProgramDto.class, Program.class, programId); + + List<Integer> result = new ArrayList<>(); + ObserveTopiaPersistenceContext persistenceContext = serviceContext.getTopiaPersistenceContext(); + + for (String tripLonglineId : tripLonglineIds) { + + TripLongline tripLongline = loadEntity(TripLonglineDto.class, TripLongline.class, tripLonglineId); + tripLongline.setProgram(program); + + saveEntity(TripLongline.class, tripLongline); + persistenceContext.flush(); + + result.add(getTripLonglinePositionInProgram(programId, tripLonglineId)); + } + + return result; + } } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit 6eff58eb72148fd80937ac7b4e4870f6f7d5beff Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 17:32:04 2015 +0100 refactoring --- .../observe/ObserveSwingApplicationContext.java | 4 +- .../actions/shared/MoveTripLonglinesUIAction.java | 69 +++++++++ .../ui/actions/shared/MoveTripsUIAction.java | 166 +++++++-------------- .../content/list/impl/longline/TripLonglinesUI.css | 2 +- .../list/impl/longline/TripLonglinesUI.jaxx | 2 +- .../observe-application-swing_fr_FR.properties | 6 +- 6 files changed, 128 insertions(+), 121 deletions(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java b/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java index ded603a..c829d63 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java @@ -68,7 +68,7 @@ import fr.ird.observe.ui.actions.shared.DeleteDataUIAction; import fr.ird.observe.ui.actions.shared.DeleteReferenceUIAction; import fr.ird.observe.ui.actions.shared.GoDownUIAction; import fr.ird.observe.ui.actions.shared.GoUpUIAction; -import fr.ird.observe.ui.actions.shared.MoveTripsUIAction; +import fr.ird.observe.ui.actions.shared.MoveTripLonglinesUIAction; import fr.ird.observe.ui.actions.shared.ReOpenUIAction; import fr.ird.observe.ui.actions.shared.ResetEditUIAction; import fr.ird.observe.ui.actions.shared.SaveEditUIAction; @@ -908,7 +908,7 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im registerMainAction(actionMap, new SaveEditUIAction(ui)); registerMainAction(actionMap, new DeleteDataUIAction(ui)); registerMainAction(actionMap, new DeleteReferenceUIAction(ui)); - registerMainAction(actionMap, new MoveTripsUIAction(ui)); + registerMainAction(actionMap, new MoveTripLonglinesUIAction(ui)); } public void registerMainAction(ActionMap actionMap, AbstractUIAction action) { diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripLonglinesUIAction.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripLonglinesUIAction.java new file mode 100644 index 0000000..bb35e7c --- /dev/null +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripLonglinesUIAction.java @@ -0,0 +1,69 @@ +package fr.ird.observe.ui.actions.shared; + +import fr.ird.observe.ObserveSwingApplicationContext; +import fr.ird.observe.services.dto.ReferenceDto; +import fr.ird.observe.services.dto.constants.GearType; +import fr.ird.observe.services.service.longline.TripLonglineService; +import fr.ird.observe.ui.ObserveMainUI; +import fr.ird.observe.ui.content.ContentUI; +import fr.ird.observe.ui.content.list.impl.longline.TripLonglinesUI; +import fr.ird.observe.ui.content.list.impl.longline.TripLonglinesUIModel; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author Kevin Morin (Code Lutin) + * @since 5.0 + */ +public class MoveTripLonglinesUIAction extends MoveTripsUIAction { + + private static final long serialVersionUID = 1L; + + /** + * Logger. + */ + private static final Log log = LogFactory.getLog(MoveTripsUIAction.class); + + public static final String ACTION_NAME = "moveTripLongliness"; + + public MoveTripLonglinesUIAction(ObserveMainUI mainUI) { + super(mainUI, ACTION_NAME); + } + + @Override + protected void checkUIClass(ContentUI<?> ui) throws IllegalStateException { + if (!(ui instanceof TripLonglinesUI)) { + throw new IllegalStateException("Can not come here!"); + } + } + + @Override + protected List<ReferenceDto> getSelectedDatas(ContentUI<?> ui) { + TripLonglinesUI tripLonglinesUI = (TripLonglinesUI) ui; + TripLonglinesUIModel model = tripLonglinesUI.getModel(); + return model.getSelectedDatas(); + } + + @Override + protected GearType getGearType(ContentUI<?> ui) { + return GearType.longline; + } + + @Override + protected List<Integer> getPositions(List<String> tripIds, String programId) { + TripLonglineService service = ObserveSwingApplicationContext.get().newService(TripLonglineService.class); + return service.moveTripLonglinesToProgram(tripIds, programId); + } + + @Override + protected void updateModelData(ContentUI<?> ui) { + TripLonglinesUI tripLonglinesUI = (TripLonglinesUI) ui; + TripLonglinesUIModel model = tripLonglinesUI.getModel(); + List<ReferenceDto> data = new ArrayList<>(model.getData()); + data.removeAll(model.getSelectedDatas()); + model.setData(data); + } +} diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripsUIAction.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripsUIAction.java index 1ade193..ed31b84 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripsUIAction.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripsUIAction.java @@ -27,28 +27,19 @@ import fr.ird.observe.ObserveSwingApplicationContext; import fr.ird.observe.services.dto.ReferenceDto; import fr.ird.observe.services.dto.ReferenceDtos; import fr.ird.observe.services.dto.constants.GearType; -import fr.ird.observe.services.dto.longline.ActivityLonglineDto; import fr.ird.observe.services.dto.referential.ProgramDto; import fr.ird.observe.services.dto.referential.ProgramDtos; import fr.ird.observe.services.service.ReferentialService; -import fr.ird.observe.services.service.longline.TripLonglineService; import fr.ird.observe.ui.ObserveMainUI; import fr.ird.observe.ui.content.ContentUI; -import fr.ird.observe.ui.content.list.impl.longline.ActivityLonglinesUI; -import fr.ird.observe.ui.content.list.impl.longline.TripLonglinesUI; -import fr.ird.observe.ui.content.list.impl.longline.TripLonglinesUIModel; -import fr.ird.observe.ui.content.open.impl.longline.ActivityLonglineUI; import fr.ird.observe.ui.tree.ObserveNode; import fr.ird.observe.ui.tree.ObserveTreeHelper; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import javax.swing.JComponent; -import javax.swing.JTree; import javax.swing.SwingUtilities; -import javax.swing.tree.TreePath; import java.awt.event.ActionEvent; -import java.util.ArrayList; import java.util.LinkedHashSet; import java.util.List; import java.util.Random; @@ -56,12 +47,12 @@ import java.util.Random; import static org.nuiton.i18n.I18n.n; /** - * Action pour fermer l'objet sous-jacent à l'écran. + * Action pour changer le programme d'une ou plusieurs marée dans la liste. * - * @author Tony Chemit - chemit@codelutin.com - * @since 1.4 + * @author Kevin Morin (Code Lutin) + * @since 5.0 */ -public class MoveTripsUIAction extends AbstractUIAction { +public abstract class MoveTripsUIAction extends AbstractUIAction { private static final long serialVersionUID = 1L; @@ -72,9 +63,9 @@ public class MoveTripsUIAction extends AbstractUIAction { public static final String ACTION_NAME = "moveTrips"; - public MoveTripsUIAction(ObserveMainUI mainUI) { + public MoveTripsUIAction(ObserveMainUI mainUI, String actionName) { super(mainUI, - ACTION_NAME, + actionName, n("observe.action.move.trips"), n("observe.action.move.trips.tip"), "close" @@ -94,130 +85,79 @@ public class MoveTripsUIAction extends AbstractUIAction { if (ui == null) { throw new IllegalStateException( "could not find client property " + - "ui on component" + c); + "ui on component" + c); } - ObserveSwingApplicationContext applicationContext = ObserveSwingApplicationContext.get(); - - if (ui instanceof TripLonglinesUI) { - - // cas particulier pour l'écran des marées longline - - LinkedHashSet<ReferenceDto> allPrograms = applicationContext.newService(ReferentialService.class) - .getReferentialReferenceSet(ProgramDto.class) - .getReference(); + checkUIClass(ui); - List<ReferenceDto> programs = Lists.newArrayList(ProgramDtos.filterReferencesByGearType(allPrograms, GearType.longline)); - -// int programIndex = JOptionPane.showOptionDialog(ui, "mesage", "test", -// JOptionPane.OK_CANCEL_OPTION, -// JOptionPane.QUESTION_MESSAGE, -// null, -// programs.toArray(new ReferenceDto[programs.size()]), -// null); - int programIndex = new Random().nextInt(programs.size()); + ObserveSwingApplicationContext applicationContext = ObserveSwingApplicationContext.get(); - ReferenceDto program = programs.get(programIndex); - String programId = program.getId(); + LinkedHashSet<ReferenceDto> allPrograms = applicationContext.newService(ReferentialService.class) + .getReferentialReferenceSet(ProgramDto.class) + .getReference(); - TripLonglinesUI tripLonglinesUI = (TripLonglinesUI) ui; - TripLonglinesUIModel model = tripLonglinesUI.getModel(); - List<ReferenceDto> selectedDatas = model.getSelectedDatas(); + GearType gearType = getGearType(ui); - ObserveOpenDataManager openDataManager = applicationContext.getOpenDataManager(); - ObserveTreeHelper treeHelper = getMainUI().getTreeHelper(); + List<ReferenceDto> programs = Lists.newArrayList(ProgramDtos.filterReferencesByGearType(allPrograms, gearType)); + int programIndex = new Random().nextInt(programs.size()); + ReferenceDto program = programs.get(programIndex); + String programId = program.getId(); - ObserveNode oldProgramNode = treeHelper.getSelectedNode(); - String oldProgramId = oldProgramNode.getId(); + ObserveTreeHelper treeHelper = getMainUI().getTreeHelper(); + ObserveNode rootNode = treeHelper.getRootNode(); + ObserveNode newProgramNode = treeHelper.getChild(rootNode, programId); - ObserveNode rootNode = treeHelper.getRootNode(); - ObserveNode newProgramNode = treeHelper.getChild(rootNode, programId); + List<ReferenceDto> selectedDatas = getSelectedDatas(ui); + List<String> tripIds = Lists.transform(selectedDatas, ReferenceDtos.getIdFunction()); + List<Integer> positions = getPositions(tripIds, programId); - List<String> tripIds = Lists.transform(selectedDatas, ReferenceDtos.getIdFunction()); - TripLonglineService service = applicationContext.newService(TripLonglineService.class); - List<Integer> positions = service.moveTripLonglinesToProgram(tripIds, programId); + ObserveNode oldProgramNode = treeHelper.getSelectedNode(); + String oldProgramId = oldProgramNode.getId(); + ObserveOpenDataManager openDataManager = applicationContext.getOpenDataManager(); - for (int i = 0, s = positions.size() ; i < s ; i++) { + for (int i = 0, s = positions.size(); i < s; i++) { - String tripId = tripIds.get(i); - ObserveNode tripNode = treeHelper.getChild(oldProgramNode, tripId); - boolean wasOpen = tripNode.isOpen(); - treeHelper.removeNode(tripNode); + String tripId = tripIds.get(i); + ObserveNode tripNode = treeHelper.getChild(oldProgramNode, tripId); + boolean wasOpen = tripNode.isOpen(); + treeHelper.removeNode(tripNode); - if (wasOpen) { - openDataManager.closeProgram(oldProgramId); - openDataManager.openProgram(programId); - } + if (wasOpen) { + openDataManager.closeProgram(oldProgramId); + openDataManager.openProgram(programId); + } - ObserveNode newTripNode = treeHelper.getChild(newProgramNode, tripId); + ObserveNode newTripNode = treeHelper.getChild(newProgramNode, tripId); - if (newTripNode == null) { + if (newTripNode == null) { - // create it - if (log.isInfoEnabled()) { - log.info("Insert trip node: "); - } - treeHelper.insertNode(newProgramNode, tripNode, positions.get(i)); + // create it + if (log.isInfoEnabled()) { + log.info("Insert trip node: "); } + treeHelper.insertNode(newProgramNode, tripNode, positions.get(i)); } - - List<ReferenceDto> data = new ArrayList<>(model.getData()); - data.removeAll(model.getSelectedDatas()); - model.setData(data); - - treeHelper.reloadNode(oldProgramNode, true); - treeHelper.reloadNode(newProgramNode, true); - treeHelper.selectNode(newProgramNode); - - return; } - if (ui instanceof ActivityLonglinesUI) { - - // cas particulier pour l'écran des activités - - JTree tree = getMainUI().getNavigation(); - ObserveTreeHelper treeHelper = getMainUI().getTreeHelper(); + updateModelData(ui); - // recuperation du noeud courant (activitys) - ObserveNode node = treeHelper.getSelectedNode(); + treeHelper.reloadNode(oldProgramNode, true); + treeHelper.reloadNode(newProgramNode, true); + treeHelper.selectNode(newProgramNode); - boolean wasCollapsed = isOpenActivityNodeCollapsed( - tree, - treeHelper, - getMainUI().getDataContext() - ); - - // selection du noeud de l'activity ouverte - treeHelper.selectOpenNode(getMainUI(), ActivityLonglineDto.class); - - // on conserve le path de l'activity - TreePath path = tree.getSelectionPath(); - - // recuperation de l'écran associé - ActivityLonglineUI selectedUI = (ActivityLonglineUI) - ObserveSwingApplicationContext.get().getSelectedContentUI(); - - // fermeture de l'activity - selectedUI.closeData(); + } + }); - if (wasCollapsed) { + } - // on ferme le noeud de l'activity (qui a ete ouvert - // lors de la selection de celle-ci) - tree.collapsePath(path); - } + protected abstract void checkUIClass(ContentUI<?> ui) throws IllegalStateException; - // retour sur le noeud des activitys - treeHelper.selectNode(node); + protected abstract List<ReferenceDto> getSelectedDatas(ContentUI<?> ui); - return; - } + protected abstract GearType getGearType(ContentUI<?> ui); - throw new IllegalStateException("Can not come here!"); - } - }); + protected abstract List<Integer> getPositions(List<String> tripIds, String programId); - } + protected abstract void updateModelData(ContentUI<?> ui); } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.css b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.css index 2856efb..7f85d81 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.css +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.css @@ -45,6 +45,6 @@ text:"observe.action.move.trips"; toolTipText:"observe.action.move.trips.tip"; enabled:{model.getSelectedDatas() != null}; - _observeAction:{MoveTripsUIAction.ACTION_NAME}; + _observeAction:{MoveTripLonglinesUIAction.ACTION_NAME}; } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.jaxx b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.jaxx index 1f38e94..3776dbc 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.jaxx +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.jaxx @@ -29,7 +29,7 @@ fr.ird.observe.services.dto.longline.TripLonglineDto fr.ird.observe.services.dto.referential.ProgramDto fr.ird.observe.ui.actions.shared.SelectOpenNodeUIAction - fr.ird.observe.ui.actions.shared.MoveTripsUIAction + fr.ird.observe.ui.actions.shared.MoveTripLonglinesUIAction java.util.List diff --git a/observe-application-swing/src/main/resources/i18n/observe-application-swing_fr_FR.properties b/observe-application-swing/src/main/resources/i18n/observe-application-swing_fr_FR.properties index 6772b97..843e2f3 100644 --- a/observe-application-swing/src/main/resources/i18n/observe-application-swing_fr_FR.properties +++ b/observe-application-swing/src/main/resources/i18n/observe-application-swing_fr_FR.properties @@ -280,10 +280,8 @@ observe.action.mitigationType.detail.tip=Voir les détails du type de mesure d'a observe.action.mitigationType.modify.tip=Modifier le type de mesure d'atténuation sélectionné observe.action.mitigationType.save.tip=Sauver les modifications du type de mesure d'atténuation observe.action.modify=Modifier -observe.action.move.maree= -observe.action.move.maree.tip= -observe.action.move.trips= -observe.action.move.trips.tip= +observe.action.move.trips=Changer de programme +observe.action.move.trips.tip=Changer le programme des marées sélectionnées observe.action.new.entry=Nouveau observe.action.new.entry.tip=Créer une nouvelle entrée observe.action.objectFate.create.tip=Créer un nouveau devenir objet -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit f5ecc24be33a336b40c9ebd8c6d13d6bc3350547 Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 17:41:10 2015 +0100 déplacement d'une marée seine dans un programme aléatoire (refs #7621) --- .../observe/ObserveSwingApplicationContext.java | 2 ++ .../actions/shared/MoveTripLonglinesUIAction.java | 4 +-- ...esUIAction.java => MoveTripSeinesUIAction.java} | 30 ++++++++++---------- .../list/impl/longline/TripLonglinesUI.jaxx | 3 ++ .../ui/content/list/impl/seine/TripSeinesUI.css | 9 ++++++ .../ui/content/list/impl/seine/TripSeinesUI.jaxx | 22 +++++++++++++++ .../content/list/impl/seine/TripSeinesUIModel.java | 33 ++++++++++++++++++++++ .../v1/seine/TripSeineServiceController.java | 7 +++++ .../services/service/seine/TripSeineService.java | 7 +++++ .../service/seine/TripSeineServiceTopia.java | 23 +++++++++++++++ 10 files changed, 123 insertions(+), 17 deletions(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java b/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java index c829d63..23ed676 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java @@ -69,6 +69,7 @@ import fr.ird.observe.ui.actions.shared.DeleteReferenceUIAction; import fr.ird.observe.ui.actions.shared.GoDownUIAction; import fr.ird.observe.ui.actions.shared.GoUpUIAction; import fr.ird.observe.ui.actions.shared.MoveTripLonglinesUIAction; +import fr.ird.observe.ui.actions.shared.MoveTripSeinesUIAction; import fr.ird.observe.ui.actions.shared.ReOpenUIAction; import fr.ird.observe.ui.actions.shared.ResetEditUIAction; import fr.ird.observe.ui.actions.shared.SaveEditUIAction; @@ -909,6 +910,7 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im registerMainAction(actionMap, new DeleteDataUIAction(ui)); registerMainAction(actionMap, new DeleteReferenceUIAction(ui)); registerMainAction(actionMap, new MoveTripLonglinesUIAction(ui)); + registerMainAction(actionMap, new MoveTripSeinesUIAction(ui)); } public void registerMainAction(ActionMap actionMap, AbstractUIAction action) { diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripLonglinesUIAction.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripLonglinesUIAction.java index bb35e7c..e7f65da 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripLonglinesUIAction.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripLonglinesUIAction.java @@ -25,9 +25,9 @@ public class MoveTripLonglinesUIAction extends MoveTripsUIAction { /** * Logger. */ - private static final Log log = LogFactory.getLog(MoveTripsUIAction.class); + private static final Log log = LogFactory.getLog(MoveTripLonglinesUIAction.class); - public static final String ACTION_NAME = "moveTripLongliness"; + public static final String ACTION_NAME = "moveTripLonglines"; public MoveTripLonglinesUIAction(ObserveMainUI mainUI) { super(mainUI, ACTION_NAME); diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripLonglinesUIAction.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripSeinesUIAction.java similarity index 56% copy from observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripLonglinesUIAction.java copy to observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripSeinesUIAction.java index bb35e7c..4532e71 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripLonglinesUIAction.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripSeinesUIAction.java @@ -3,11 +3,11 @@ package fr.ird.observe.ui.actions.shared; import fr.ird.observe.ObserveSwingApplicationContext; import fr.ird.observe.services.dto.ReferenceDto; import fr.ird.observe.services.dto.constants.GearType; -import fr.ird.observe.services.service.longline.TripLonglineService; +import fr.ird.observe.services.service.seine.TripSeineService; import fr.ird.observe.ui.ObserveMainUI; import fr.ird.observe.ui.content.ContentUI; -import fr.ird.observe.ui.content.list.impl.longline.TripLonglinesUI; -import fr.ird.observe.ui.content.list.impl.longline.TripLonglinesUIModel; +import fr.ird.observe.ui.content.list.impl.seine.TripSeinesUI; +import fr.ird.observe.ui.content.list.impl.seine.TripSeinesUIModel; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -18,50 +18,50 @@ import java.util.List; * @author Kevin Morin (Code Lutin) * @since 5.0 */ -public class MoveTripLonglinesUIAction extends MoveTripsUIAction { +public class MoveTripSeinesUIAction extends MoveTripsUIAction { private static final long serialVersionUID = 1L; /** * Logger. */ - private static final Log log = LogFactory.getLog(MoveTripsUIAction.class); + private static final Log log = LogFactory.getLog(MoveTripSeinesUIAction.class); - public static final String ACTION_NAME = "moveTripLongliness"; + public static final String ACTION_NAME = "moveTripSeines"; - public MoveTripLonglinesUIAction(ObserveMainUI mainUI) { + public MoveTripSeinesUIAction(ObserveMainUI mainUI) { super(mainUI, ACTION_NAME); } @Override protected void checkUIClass(ContentUI<?> ui) throws IllegalStateException { - if (!(ui instanceof TripLonglinesUI)) { + if (!(ui instanceof TripSeinesUI)) { throw new IllegalStateException("Can not come here!"); } } @Override protected List<ReferenceDto> getSelectedDatas(ContentUI<?> ui) { - TripLonglinesUI tripLonglinesUI = (TripLonglinesUI) ui; - TripLonglinesUIModel model = tripLonglinesUI.getModel(); + TripSeinesUI tripSeinesUI = (TripSeinesUI) ui; + TripSeinesUIModel model = tripSeinesUI.getModel(); return model.getSelectedDatas(); } @Override protected GearType getGearType(ContentUI<?> ui) { - return GearType.longline; + return GearType.seine; } @Override protected List<Integer> getPositions(List<String> tripIds, String programId) { - TripLonglineService service = ObserveSwingApplicationContext.get().newService(TripLonglineService.class); - return service.moveTripLonglinesToProgram(tripIds, programId); + TripSeineService service = ObserveSwingApplicationContext.get().newService(TripSeineService.class); + return service.moveTripSeinesToProgram(tripIds, programId); } @Override protected void updateModelData(ContentUI<?> ui) { - TripLonglinesUI tripLonglinesUI = (TripLonglinesUI) ui; - TripLonglinesUIModel model = tripLonglinesUI.getModel(); + TripSeinesUI tripSeinesUI = (TripSeinesUI) ui; + TripSeinesUIModel model = tripSeinesUI.getModel(); List<ReferenceDto> data = new ArrayList<>(model.getData()); data.removeAll(model.getSelectedDatas()); model.setData(data); diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.jaxx b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.jaxx index 3776dbc..1615507 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.jaxx +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUI.jaxx @@ -57,6 +57,7 @@ public final List<ReferenceDto> getSelectedDatas() { <!-- edit bean --> <ProgramDto id='bean'/> + <!-- override data selection --> <ListSelectionModel id='listSelectionModel' onValueChanged='if (!event.getValueIsAdjusting()) getModel().setSelectedDatas(getSelectedDatas());'/> @@ -76,6 +77,8 @@ public final List<ReferenceDto> getSelectedDatas() { <cell> <JButton id='gotoOpenActivity2' styleClass='gotoOpenActivity2'/> </cell> + </row> + <row weighty="1" weightx="1"> <cell> <JButton id='moveSelectedTrips'/> </cell> diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUI.css b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUI.css index b63c074..d582c45 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUI.css +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUI.css @@ -19,6 +19,9 @@ * <http://www.gnu.org/licenses/gpl-3.0.html>. * #L% */ +#listSelectionModel { + selectionMode:{ListSelectionModel.MULTIPLE_INTERVAL_SELECTION}; +} #gotoSelectedChild { _text:{t("observe.action.goto.selected.maree")}; @@ -35,4 +38,10 @@ toolTipText:"observe.action.create.maree.tip"; } +#moveSelectedTrips { + text:"observe.action.move.trips"; + toolTipText:"observe.action.move.trips.tip"; + enabled:{model.getSelectedDatas() != null}; + _observeAction:{MoveTripSeinesUIAction.ACTION_NAME}; +} diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUI.jaxx b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUI.jaxx index 4e1122b..fe7952b 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUI.jaxx +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUI.jaxx @@ -30,12 +30,25 @@ fr.ird.observe.services.dto.seine.RouteDto fr.ird.observe.services.dto.referential.ProgramDto fr.ird.observe.ui.actions.shared.SelectOpenNodeUIAction + fr.ird.observe.ui.actions.shared.MoveTripSeinesUIAction + + java.util.List + + javax.swing.ListSelectionModel static org.nuiton.i18n.I18n.n </import> <style source="CommonListUI.css"/> + <script><![CDATA[ + +public final List<ReferenceDto> getSelectedDatas() { + return (List<ReferenceDto>) list.getSelectedValuesList(); +} + +]]></script> + <!-- handler --> <TripSeinesUIHandler id='handler' constructorParams='this'/> @@ -45,6 +58,10 @@ <!-- edit bean --> <ProgramDto id='bean'/> + <!-- override data selection --> + <ListSelectionModel id='listSelectionModel' + onValueChanged='if (!event.getValueIsAdjusting()) getModel().setSelectedDatas(getSelectedDatas());'/> + <!-- override generic actions --> <JButton id='gotoSelectedChild'/> <JButton id='reopenChild'/> @@ -70,6 +87,11 @@ <JButton id='gotoOpenActivity2' styleClass='gotoOpenActivity2'/> </cell> </row> + <row weighty="1" weightx="1"> + <cell> + <JButton id='moveSelectedTrips'/> + </cell> + </row> </Table> </fr.ird.observe.ui.content.list.ContentListUI> diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUIModel.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUIModel.java index f28ed51..9efc69b 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUIModel.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUIModel.java @@ -22,9 +22,14 @@ package fr.ird.observe.ui.content.list.impl.seine; * #L% */ +import fr.ird.observe.services.dto.ReferenceDto; import fr.ird.observe.services.dto.referential.ProgramDto; import fr.ird.observe.services.dto.seine.TripSeineDto; import fr.ird.observe.ui.content.list.ContentListUIModel; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import java.util.List; /** * Created on 9/26/14. @@ -36,8 +41,36 @@ public class TripSeinesUIModel extends ContentListUIModel<ProgramDto, TripSeineD private static final long serialVersionUID = 1L; + /** + * Logger. + */ + private static final Log log = LogFactory.getLog(TripSeinesUIModel.class); + + public static final String PROPERTY_SELECTED_DATAS = "selectedDatas"; + + /** entité sélectionnée dans la liste */ + protected List<ReferenceDto> selectedDatas; + public TripSeinesUIModel() { super(ProgramDto.class, TripSeineDto.class); } + public List<ReferenceDto> getSelectedDatas() { + return selectedDatas; + } + + public void setSelectedDatas(List<ReferenceDto> selectedDatas) { + List<ReferenceDto> old = getSelectedDatas(); + this.selectedDatas = selectedDatas; + if (log.isDebugEnabled()) { + log.debug("New selected datas : " + selectedDatas); + } + firePropertyChange(PROPERTY_SELECTED_DATAS, old, selectedDatas); + } + + @Override + public void setData(List<ReferenceDto> data) { + super.setData(data); + setSelectedDatas(null); + } } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/TripSeineServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/TripSeineServiceController.java index cf321f5..9f5fdaf 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/TripSeineServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/TripSeineServiceController.java @@ -31,6 +31,8 @@ import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.TripSeineDto; import fr.ird.observe.services.service.seine.TripSeineService; +import java.util.List; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -104,4 +106,9 @@ public class TripSeineServiceController extends ObserveAuthenticatedServiceContr public int moveTripSeineToProgram(String tripSeineId, String programId) { return service.moveTripSeineToProgram(tripSeineId, programId); } + + @Override + public List<Integer> moveTripSeinesToProgram(List<String> tripSeineIds, String programId) { + return service.moveTripSeinesToProgram(tripSeineIds, programId); + } } diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/TripSeineService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/TripSeineService.java index 937cb3d..47e2d1f 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/TripSeineService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/TripSeineService.java @@ -35,6 +35,8 @@ import fr.ird.observe.services.spi.ReadDataPermission; import fr.ird.observe.services.spi.Write; import fr.ird.observe.services.spi.WriteDataPermission; +import java.util.List; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -83,4 +85,9 @@ public interface TripSeineService extends ObserveService { @WriteDataPermission @PostRequest int moveTripSeineToProgram(String tripSeineId, String programId); + + @Write + @WriteDataPermission + @PostRequest + List<Integer> moveTripSeinesToProgram(List<String> tripSeineIds, String programId); } \ No newline at end of file diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TripSeineServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TripSeineServiceTopia.java index 054f0f2..607b7d5 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TripSeineServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TripSeineServiceTopia.java @@ -23,6 +23,7 @@ package fr.ird.observe.services.service.seine; */ import com.google.common.collect.Sets; +import fr.ird.observe.ObserveTopiaPersistenceContext; import fr.ird.observe.entities.constants.ReferenceLocale; import fr.ird.observe.entities.referentiel.Program; import fr.ird.observe.entities.seine.TripSeine; @@ -40,6 +41,7 @@ import fr.ird.observe.services.dto.result.SaveResultDtos; import fr.ird.observe.services.dto.seine.TripSeineDto; import org.nuiton.util.DateUtil; +import java.util.ArrayList; import java.util.Collections; import java.util.Date; import java.util.LinkedHashSet; @@ -215,4 +217,25 @@ public class TripSeineServiceTopia extends ObserveServiceTopia implements TripSe saveEntity(TripSeine.class, tripSeine); return getTripSeinePositionInProgram(programId, tripSeineId); } + + @Override + public List<Integer> moveTripSeinesToProgram(List<String> tripSeineIds, String programId) { + Program program = loadEntity(ProgramDto.class, Program.class, programId); + + List<Integer> result = new ArrayList<>(); + ObserveTopiaPersistenceContext persistenceContext = serviceContext.getTopiaPersistenceContext(); + + for (String tripSeineId : tripSeineIds) { + + TripSeine tripSeine = loadEntity(TripSeineDto.class, TripSeine.class, tripSeineId); + tripSeine.setProgram(program); + + saveEntity(TripSeine.class, tripSeine); + persistenceContext.flush(); + + result.add(getTripSeinePositionInProgram(programId, tripSeineId)); + } + + return result; + } } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit 0257b062bc61483ad6e24ee5592390d736fa5e44 Author: Kevin Morin <morin@codelutin.com> Date: Mon Nov 9 18:21:48 2015 +0100 sélection du programme dans lequel déplacer les marées (refs #7621) --- .../ui/actions/shared/MoveTripsUIAction.java | 143 +++++++++++++++------ .../ui/content/list/impl/seine/TripSeinesUI.jaxx | 1 + 2 files changed, 102 insertions(+), 42 deletions(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripsUIAction.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripsUIAction.java index ed31b84..5a97048 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripsUIAction.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripsUIAction.java @@ -36,13 +36,14 @@ import fr.ird.observe.ui.tree.ObserveNode; import fr.ird.observe.ui.tree.ObserveTreeHelper; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.nuiton.decorator.Decorator; import javax.swing.JComponent; +import javax.swing.JOptionPane; import javax.swing.SwingUtilities; import java.awt.event.ActionEvent; import java.util.LinkedHashSet; import java.util.List; -import java.util.Random; import static org.nuiton.i18n.I18n.n; @@ -90,64 +91,103 @@ public abstract class MoveTripsUIAction extends AbstractUIAction { checkUIClass(ui); - ObserveSwingApplicationContext applicationContext = ObserveSwingApplicationContext.get(); - - LinkedHashSet<ReferenceDto> allPrograms = applicationContext.newService(ReferentialService.class) - .getReferentialReferenceSet(ProgramDto.class) - .getReference(); - - GearType gearType = getGearType(ui); - - List<ReferenceDto> programs = Lists.newArrayList(ProgramDtos.filterReferencesByGearType(allPrograms, gearType)); - int programIndex = new Random().nextInt(programs.size()); - ReferenceDto program = programs.get(programIndex); - String programId = program.getId(); - + // get current program id ObserveTreeHelper treeHelper = getMainUI().getTreeHelper(); - ObserveNode rootNode = treeHelper.getRootNode(); - ObserveNode newProgramNode = treeHelper.getChild(rootNode, programId); + ObserveNode oldProgramNode = treeHelper.getSelectedNode(); + String oldProgramId = oldProgramNode.getId(); + + // choose the new program + String programId = chooseNewProgram(ui, oldProgramId); + // change the program of the selected trips List<ReferenceDto> selectedDatas = getSelectedDatas(ui); List<String> tripIds = Lists.transform(selectedDatas, ReferenceDtos.getIdFunction()); List<Integer> positions = getPositions(tripIds, programId); - ObserveNode oldProgramNode = treeHelper.getSelectedNode(); - String oldProgramId = oldProgramNode.getId(); - ObserveOpenDataManager openDataManager = applicationContext.getOpenDataManager(); + // update the tree + updateTree(ui, oldProgramNode, oldProgramId, programId, tripIds, positions); - for (int i = 0, s = positions.size(); i < s; i++) { + } + }); - String tripId = tripIds.get(i); - ObserveNode tripNode = treeHelper.getChild(oldProgramNode, tripId); - boolean wasOpen = tripNode.isOpen(); - treeHelper.removeNode(tripNode); + } - if (wasOpen) { - openDataManager.closeProgram(oldProgramId); - openDataManager.openProgram(programId); - } + protected String chooseNewProgram(ContentUI<?> ui, String oldProgramId) { + ObserveSwingApplicationContext applicationContext = ObserveSwingApplicationContext.get(); - ObserveNode newTripNode = treeHelper.getChild(newProgramNode, tripId); + LinkedHashSet<ReferenceDto> allPrograms = applicationContext.newService(ReferentialService.class) + .getReferentialReferenceSet(ProgramDto.class) + .getReference(); - if (newTripNode == null) { + GearType gearType = getGearType(ui); - // create it - if (log.isInfoEnabled()) { - log.info("Insert trip node: "); - } - treeHelper.insertNode(newProgramNode, tripNode, positions.get(i)); - } - } + List<ReferenceDto> programs = Lists.newArrayList(ProgramDtos.filterReferencesByGearType(allPrograms, gearType)); - updateModelData(ui); + Decorator<ReferenceDto> decorator = applicationContext.getDecorator(ReferenceDto.class, + ProgramDto.class.getSimpleName()); - treeHelper.reloadNode(oldProgramNode, true); - treeHelper.reloadNode(newProgramNode, true); - treeHelper.selectNode(newProgramNode); + //on crée un tableau avec un programme en moins car on ne propose pas le programme actuel + DecoratedProgram[] decoratedPrograms = new DecoratedProgram[programs.size() - 1]; + int j = 0; + for (ReferenceDto program : programs) { + if (!oldProgramId.equals(program.getId())) { + decoratedPrograms[j++] = new DecoratedProgram(program.getId(), decorator.toString(program)); } - }); + } + + Object decoratedProgram = JOptionPane.showInputDialog(ui, "message", "title", + JOptionPane.QUESTION_MESSAGE, + null, + decoratedPrograms, + null); + return ((DecoratedProgram) decoratedProgram).getId(); + } + + protected void updateTree(ContentUI<?> ui, + ObserveNode oldProgramNode, + String oldProgramId, + String programId, + List<String> tripIds, + List<Integer> positions) { + + ObserveSwingApplicationContext applicationContext = ObserveSwingApplicationContext.get(); + ObserveOpenDataManager openDataManager = applicationContext.getOpenDataManager(); + ObserveTreeHelper treeHelper = getMainUI().getTreeHelper(); + ObserveNode rootNode = treeHelper.getRootNode(); + ObserveNode newProgramNode = treeHelper.getChild(rootNode, programId); + + + for (int i = 0, s = positions.size(); i < s; i++) { + + String tripId = tripIds.get(i); + ObserveNode tripNode = treeHelper.getChild(oldProgramNode, tripId); + boolean wasOpen = tripNode.isOpen(); + treeHelper.removeNode(tripNode); + + if (wasOpen) { + openDataManager.closeProgram(oldProgramId); + openDataManager.openProgram(programId); + } + + ObserveNode newTripNode = treeHelper.getChild(newProgramNode, tripId); + + if (newTripNode == null) { + + // create it + if (log.isInfoEnabled()) { + log.info("Insert trip node: "); + } + treeHelper.insertNode(newProgramNode, tripNode, positions.get(i)); + } + } + + updateModelData(ui); + + treeHelper.reloadNode(oldProgramNode, true); + treeHelper.reloadNode(newProgramNode, true); + treeHelper.selectNode(newProgramNode); } protected abstract void checkUIClass(ContentUI<?> ui) throws IllegalStateException; @@ -160,4 +200,23 @@ public abstract class MoveTripsUIAction extends AbstractUIAction { protected abstract void updateModelData(ContentUI<?> ui); + public static class DecoratedProgram { + + private final String id; + private final String label; + + public DecoratedProgram(String id, String label) { + this.id = id; + this.label = label; + } + + public String getId() { + return id; + } + + @Override + public String toString() { + return label; + } + } } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUI.jaxx b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUI.jaxx index fe7952b..4904580 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUI.jaxx +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUI.jaxx @@ -25,6 +25,7 @@ emptyListMessage='{n("observe.message.no.trip.for.program")}'> <import> + fr.ird.observe.services.dto.ReferenceDto fr.ird.observe.services.dto.seine.ActivitySeineDto fr.ird.observe.services.dto.seine.TripSeineDto fr.ird.observe.services.dto.seine.RouteDto -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit bcde433aea8e7ad6752cd1919db65f8131149372 Author: Kevin Morin <morin@codelutin.com> Date: Tue Nov 10 16:46:32 2015 +0100 tri des programmes dans la popup + ajout d'une icône au bouton (fixes #7621) --- .../src/main/filters/observe-ui.properties | 1 + .../src/main/java/fr/ird/observe/ui/ObserveMainUI.css | 1 + .../ird/observe/ui/actions/shared/MoveTripsUIAction.java | 13 +++++++++---- .../java/fr/ird/observe/ui/tree/ObserveTreeHelper.java | 3 ++- .../i18n/observe-application-swing_en_GB.properties | 4 ++++ .../i18n/observe-application-swing_es_ES.properties | 4 ++++ .../i18n/observe-application-swing_fr_FR.properties | 2 ++ .../src/main/resources/icons/action-move-trips.png | Bin 0 -> 1036 bytes 8 files changed, 23 insertions(+), 5 deletions(-) diff --git a/observe-application-swing/src/main/filters/observe-ui.properties b/observe-application-swing/src/main/filters/observe-ui.properties index aaa1d4d..897856f 100644 --- a/observe-application-swing/src/main/filters/observe-ui.properties +++ b/observe-application-swing/src/main/filters/observe-ui.properties @@ -148,6 +148,7 @@ icon.action.warning=warning.png icon.action.mode-create=action-mode-create.png icon.action.mode-update=action-mode-update.png icon.action.mode-read=action-mode-read.png +icon.action.move-trips=action-move-trips.png icon.action.translate=action-translate.png icon.action.application-reload=action-application-reload.png icon.action.report=action-report.png diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/ObserveMainUI.css b/observe-application-swing/src/main/java/fr/ird/observe/ui/ObserveMainUI.css index 5ba212f..2a385e0 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/ObserveMainUI.css +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/ObserveMainUI.css @@ -44,6 +44,7 @@ JSplitPane { #navigationMoveTripAction { text: "observe.navigationMenu.moveTrip"; toolTipText: "observe.navigationMenu.moveTrip"; + actionIcon: "move-trips"; } #navigationNoAction { diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripsUIAction.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripsUIAction.java index 5a97048..fed3acb 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripsUIAction.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/actions/shared/MoveTripsUIAction.java @@ -42,10 +42,12 @@ import javax.swing.JComponent; import javax.swing.JOptionPane; import javax.swing.SwingUtilities; import java.awt.event.ActionEvent; +import java.util.ArrayList; import java.util.LinkedHashSet; import java.util.List; import static org.nuiton.i18n.I18n.n; +import static org.nuiton.i18n.I18n.t; /** * Action pour changer le programme d'une ou plusieurs marée dans la liste. @@ -69,7 +71,7 @@ public abstract class MoveTripsUIAction extends AbstractUIAction { actionName, n("observe.action.move.trips"), n("observe.action.move.trips.tip"), - "close" + "move-trips" ); } @@ -121,7 +123,9 @@ public abstract class MoveTripsUIAction extends AbstractUIAction { GearType gearType = getGearType(ui); - List<ReferenceDto> programs = Lists.newArrayList(ProgramDtos.filterReferencesByGearType(allPrograms, gearType)); + List<ReferenceDto> filteredPrograms = Lists.newArrayList(ProgramDtos.filterReferencesByGearType(allPrograms, gearType)); + List<ReferenceDto<ProgramDto>> programs = new ArrayList<>(ReferenceDtos.castToCollectionOfReferenceDto(filteredPrograms)); + ObserveTreeHelper.sortPrograms(programs); Decorator<ReferenceDto> decorator = applicationContext.getDecorator(ReferenceDto.class, ProgramDto.class.getSimpleName()); @@ -136,7 +140,9 @@ public abstract class MoveTripsUIAction extends AbstractUIAction { } } - Object decoratedProgram = JOptionPane.showInputDialog(ui, "message", "title", + Object decoratedProgram = JOptionPane.showInputDialog(ui, + t("observe.action.choose.program.message"), + t("observe.action.choose.program.title"), JOptionPane.QUESTION_MESSAGE, null, decoratedPrograms, @@ -158,7 +164,6 @@ public abstract class MoveTripsUIAction extends AbstractUIAction { ObserveNode rootNode = treeHelper.getRootNode(); ObserveNode newProgramNode = treeHelper.getChild(rootNode, programId); - for (int i = 0, s = positions.size(); i < s; i++) { String tripId = tripIds.get(i); diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveTreeHelper.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveTreeHelper.java index c4b162f..a8ed1e9 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveTreeHelper.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveTreeHelper.java @@ -542,7 +542,8 @@ public class ObserveTreeHelper extends NavTreeHelper<ObserveNode> { public static void sortPrograms(List<ReferenceDto<ProgramDto>> data) { Collections.sort(data, new Comparator<ReferenceDto<ProgramDto>>() { - Decorator<ReferentialReferenceDto<ProgramDto>> decorator = ObserveSwingApplicationContext.get().getDecoratorService().getReferenceDecorator(ProgramDto.class); + Decorator<ReferentialReferenceDto<ProgramDto>> decorator = + ObserveSwingApplicationContext.get().getDecoratorService().getReferenceDecorator(ProgramDto.class); @Override public int compare(ReferenceDto<ProgramDto> o1, ReferenceDto<ProgramDto> o2) { diff --git a/observe-application-swing/src/main/resources/i18n/observe-application-swing_en_GB.properties b/observe-application-swing/src/main/resources/i18n/observe-application-swing_en_GB.properties index bf26992..c9145ec 100644 --- a/observe-application-swing/src/main/resources/i18n/observe-application-swing_en_GB.properties +++ b/observe-application-swing/src/main/resources/i18n/observe-application-swing_en_GB.properties @@ -43,11 +43,15 @@ observe.action.catchFateLongline.modify.tip= observe.action.catchFateLongline.save.tip= observe.action.change.storage=Change storage observe.action.change.storage.tip=To change current storage +observe.action.choose-program.message= +observe.action.choose-program.title= observe.action.choose.db.dump=Choose the backup observe.action.choose.db.dump.description=Database backup (*.sql.gz) observe.action.choose.db.dump.directory=Choose the backup directory observe.action.choose.importGPS=Use this file observe.action.choose.importGPS.description=GPS File (*.gpx) +observe.action.choose.program.message= +observe.action.choose.program.title= observe.action.choose.report.directory=Choose reports directory observe.action.choose.reportFile=Choose the reports directory observe.action.choose.reportFile.description=Report's file (*.properties) diff --git a/observe-application-swing/src/main/resources/i18n/observe-application-swing_es_ES.properties b/observe-application-swing/src/main/resources/i18n/observe-application-swing_es_ES.properties index 9faa438..a5de89f 100644 --- a/observe-application-swing/src/main/resources/i18n/observe-application-swing_es_ES.properties +++ b/observe-application-swing/src/main/resources/i18n/observe-application-swing_es_ES.properties @@ -43,11 +43,15 @@ observe.action.catchFateLongline.modify.tip= observe.action.catchFateLongline.save.tip= observe.action.change.storage=Cambiar el origen de datos observe.action.change.storage.tip=Para cambiar el origen de datos de la aplicación +observe.action.choose-program.message= +observe.action.choose-program.title= observe.action.choose.db.dump=Elegir la copia de seguridad observe.action.choose.db.dump.description=Copia de seguridad de la base (*.sql.gz) observe.action.choose.db.dump.directory=Elegir el directorio de la copia de seguridad observe.action.choose.importGPS=Usar este archivo observe.action.choose.importGPS.description=Archivo GPS (*.gpx) +observe.action.choose.program.message= +observe.action.choose.program.title= observe.action.choose.report.directory=Elegir el directorio de los informes observe.action.choose.reportFile=Elegir el archivo de definición de informe observe.action.choose.reportFile.description=Archivo de definición (*.properties) diff --git a/observe-application-swing/src/main/resources/i18n/observe-application-swing_fr_FR.properties b/observe-application-swing/src/main/resources/i18n/observe-application-swing_fr_FR.properties index 843e2f3..c68b428 100644 --- a/observe-application-swing/src/main/resources/i18n/observe-application-swing_fr_FR.properties +++ b/observe-application-swing/src/main/resources/i18n/observe-application-swing_fr_FR.properties @@ -48,6 +48,8 @@ observe.action.choose.db.dump.description=Sauvegarde de base (*.sql.gz) observe.action.choose.db.dump.directory=Choisir le répertoire de sauvegarde observe.action.choose.importGPS=Utiliser ce fichier observe.action.choose.importGPS.description=Fichier GPS (*.gpx) +observe.action.choose.program.message=A quel programme voulez-vous associer les marées sélectionnées ? +observe.action.choose.program.title=Changer le programme des marées observe.action.choose.report.directory=Choisir le répertoire des rapports observe.action.choose.reportFile=Choisir le fichier de définition de report observe.action.choose.reportFile.description=Fichier de définition (*.properties) diff --git a/observe-application-swing/src/main/resources/icons/action-move-trips.png b/observe-application-swing/src/main/resources/icons/action-move-trips.png new file mode 100644 index 0000000..c80244b Binary files /dev/null and b/observe-application-swing/src/main/resources/icons/action-move-trips.png differ -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit 837d7ac2ccb939c3e9badb86642d296cfac6df03 Merge: 754637f bcde433 Author: Kevin Morin <morin@codelutin.com> Date: Tue Nov 10 16:53:57 2015 +0100 fixes #7621 Ajout de nouvelles fonctionnalités sur la liste des marées .../src/main/filters/observe-ui.properties | 1 + .../observe/ObserveSwingApplicationContext.java | 7 + .../fr/ird/observe/business/db/DataContext.java | 6 + .../main/java/fr/ird/observe/ui/ObserveMainUI.css | 20 ++ .../main/java/fr/ird/observe/ui/ObserveMainUI.jaxx | 5 + .../actions/shared/MoveTripLonglinesUIAction.java | 69 +++++++ .../ui/actions/shared/MoveTripSeinesUIAction.java | 69 +++++++ .../ui/actions/shared/MoveTripsUIAction.java | 227 +++++++++++++++++++++ .../content/list/impl/longline/TripLonglinesUI.css | 12 ++ .../list/impl/longline/TripLonglinesUI.jaxx | 23 +++ .../list/impl/longline/TripLonglinesUIModel.java | 33 +++ .../ui/content/list/impl/seine/TripSeinesUI.css | 9 + .../ui/content/list/impl/seine/TripSeinesUI.jaxx | 23 +++ .../content/list/impl/seine/TripSeinesUIModel.java | 33 +++ .../tree/ObserveNavigationTreeShowPopupAction.java | 131 ++++++++---- .../fr/ird/observe/ui/tree/ObserveTreeHelper.java | 3 +- .../actions/ChangeTripProgramActionListener.java | 51 +++-- .../observe-application-swing_en_GB.properties | 12 ++ .../observe-application-swing_es_ES.properties | 12 ++ .../observe-application-swing_fr_FR.properties | 8 + .../src/main/resources/icons/action-move-trips.png | Bin 0 -> 1036 bytes .../ActivityLonglineServiceController.java | 10 +- .../v1/longline/SetLonglineServiceController.java | 9 +- .../v1/longline/TripLonglineServiceController.java | 16 +- .../v1/seine/ActivitySeineServiceController.java | 9 +- .../v1/seine/FloatingObjectServiceController.java | 9 +- .../v1/seine/RouteServiceController.java | 9 +- .../v1/seine/SetSeineServiceController.java | 9 +- .../v1/seine/TripSeineServiceController.java | 16 +- .../observe/ObserveTopiaPersistenceContext.java | 4 + .../service/longline/ActivityLonglineService.java | 5 +- .../service/longline/SetLonglineService.java | 5 +- .../service/longline/TripLonglineService.java | 17 +- .../service/seine/ActivitySeineService.java | 5 +- .../service/seine/FloatingObjectService.java | 5 +- .../services/service/seine/RouteService.java | 5 +- .../services/service/seine/SetSeineService.java | 5 +- .../services/service/seine/TripSeineService.java | 16 +- .../services/dto/referential/ProgramDtos.java | 5 + .../longline/ActivityLonglineServiceTopia.java | 9 +- .../service/longline/SetLonglineServiceTopia.java | 10 +- .../service/longline/TripLonglineServiceTopia.java | 41 +++- .../service/seine/ActivitySeineServiceTopia.java | 9 +- .../service/seine/FloatingObjectServiceTopia.java | 9 +- .../services/service/seine/RouteServiceTopia.java | 9 +- .../service/seine/SetSeineServiceTopia.java | 9 +- .../service/seine/TripSeineServiceTopia.java | 36 +++- 47 files changed, 899 insertions(+), 146 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
participants (1)
-
codelutin.com scm