This is an automated email from the git hooks/post-receive script. New commit to branch feature/7025 in repository tutti. See http://git.codelutin.com/tutti.git commit 98ebee456344d0983914d9f931d9bc7876446667 Author: Kevin Morin <morin@codelutin.com> Date: Tue Dec 22 15:17:01 2015 +0100 pouvoir ordonner les caractéristiques du trait dans le protocole (fixes #7025) --- .../filtered-resources/tutti-help-fr.properties | 4 +- .../EditSampleCategoryModelTableModel.java | 14 ++--- .../EditProtocolCaracteristicsTableModel.java | 4 +- .../ui/swing/content/protocol/EditProtocolUI.css | 21 ++++++++ .../ui/swing/content/protocol/EditProtocolUI.jaxx | 2 + .../content/protocol/EditProtocolUIHandler.java | 50 +++++++++--------- .../content/protocol/EditProtocolUIModel.java | 26 ++++++++++ .../MoveDownCaracteristicMappingAction.java | 58 +++++++++++++++++++++ .../actions/MoveUpCaracteristicMappingAction.java | 59 ++++++++++++++++++++++ .../swing/util/table/AbstractTuttiTableModel.java | 28 ++++++++++ .../resources/i18n/tutti-ui-swing_en_GB.properties | 6 +++ .../resources/i18n/tutti-ui-swing_fr_FR.properties | 6 +++ 12 files changed, 240 insertions(+), 38 deletions(-) diff --git a/tutti-ui-swing/src/main/filtered-resources/tutti-help-fr.properties b/tutti-ui-swing/src/main/filtered-resources/tutti-help-fr.properties index 4e0c7a3..72bcdd0 100644 --- a/tutti-ui-swing/src/main/filtered-resources/tutti-help-fr.properties +++ b/tutti-ui-swing/src/main/filtered-resources/tutti-help-fr.properties @@ -1,5 +1,5 @@ #Generated by org.nuiton.jaxx.plugin.GenerateHelpIdsMojo -#Mon Dec 21 17:19:49 CET 2015 +#Tue Dec 22 14:53:19 CET 2015 tutti.config.help=config.html tutti.createAccidentalBatch.action.cancel.help=editFishingOperation.html\#captureCapturesAccidentellesActions tutti.createAccidentalBatch.action.saveAndClose.help=editFishingOperation.html\#captureCapturesAccidentellesActions @@ -238,6 +238,8 @@ tutti.editProtocol.action.importProtocolBenthos.help=editProtocol.html\#actionsB tutti.editProtocol.action.importProtocolCaracteristic.help=editProtocol.html\#actionsCaracteristics tutti.editProtocol.action.importProtocolColumns.help= tutti.editProtocol.action.importProtocolSpecies.help=editProtocol.html\#actionsSpecies +tutti.editProtocol.action.moveDownCaracteristicMapping.help= +tutti.editProtocol.action.moveUpEntry.help= tutti.editProtocol.action.removeBenthosProtocol.help=editProtocol.html\#actionsBenthos tutti.editProtocol.action.removeCaracteristicMapping.help= tutti.editProtocol.action.removeSpeciesProtocol.help=editProtocol.html\#actionsSpecies diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelTableModel.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelTableModel.java index 2aa748f..4570875 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelTableModel.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelTableModel.java @@ -22,10 +22,10 @@ package fr.ifremer.tutti.ui.swing.content.category; * #L% */ -import org.nuiton.jaxx.application.swing.table.AbstractApplicationTableModel; import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModelEntry; -import org.nuiton.jaxx.application.swing.table.ColumnIdentifier; +import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableModel; import org.jdesktop.swingx.table.TableColumnModelExt; +import org.nuiton.jaxx.application.swing.table.ColumnIdentifier; import static org.nuiton.i18n.I18n.n; @@ -35,7 +35,7 @@ import static org.nuiton.i18n.I18n.n; * @author tchemit <chemit@codelutin.com> * @since 2.4 */ -public class EditSampleCategoryModelTableModel extends AbstractApplicationTableModel<EditSampleCategoryModelRowModel> { +public class EditSampleCategoryModelTableModel extends AbstractTuttiTableModel<EditSampleCategoryModelRowModel> { private static final long serialVersionUID = 1L; @@ -69,12 +69,4 @@ public class EditSampleCategoryModelTableModel extends AbstractApplicationTableM return result; } - public void permuteEntry(int firstRow, int lastRow) { - EditSampleCategoryModelRowModel firstR = getRows().get(firstRow); - - getRows().remove(firstRow); - getRows().add(lastRow, firstR); - - fireTableRowsUpdated(firstRow, lastRow); - } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolCaracteristicsTableModel.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolCaracteristicsTableModel.java index a4095d2..7cf08cf 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolCaracteristicsTableModel.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolCaracteristicsTableModel.java @@ -25,8 +25,8 @@ package fr.ifremer.tutti.ui.swing.content.protocol; */ import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableModel; import org.jdesktop.swingx.table.TableColumnModelExt; -import org.nuiton.jaxx.application.swing.table.AbstractApplicationTableModel; import org.nuiton.jaxx.application.swing.table.ColumnIdentifier; import java.util.Collection; @@ -37,7 +37,7 @@ import static org.nuiton.i18n.I18n.n; * @author Kevin Morin (Code Lutin) * @since x.x */ -public class EditProtocolCaracteristicsTableModel extends AbstractApplicationTableModel<EditProtocolCaracteristicsRowModel> { +public class EditProtocolCaracteristicsTableModel extends AbstractTuttiTableModel<EditProtocolCaracteristicsRowModel> { protected Collection<Caracteristic> caracteristics; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.css index 4d2e5a1..51e0b14 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.css @@ -97,6 +97,7 @@ JTextField { } #caracteristicsMappingTable { + selectionMode: {ListSelectionModel.SINGLE_SELECTION}; selectionBackground: {null}; selectionForeground: {Color.BLACK}; sortable: false; @@ -320,4 +321,24 @@ JTextField { _applicationAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.RemoveCaracteristicMappingAction.class}; enabled: {model.isRemoveCaracteristicMappingEnabled()}; _help: {"tutti.editProtocol.action.removeCaracteristicMapping.help"}; +} + +#moveUpCaracteristicMappingButton { + actionIcon: up; + text: "tutti.editProtocol.action.moveUpCaracteristicMapping"; + toolTipText: "tutti.editProtocol.action.moveUpCaracteristicMapping.tip"; + i18nMnemonic: "tutti.editProtocol.action.moveUpCaracteristicMapping.mnemonic"; + enabled: {model.isMoveUpCaracteristicMappingEnabled()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.MoveUpCaracteristicMappingAction.class}; + _help: {"tutti.editProtocol.action.moveUpEntry.help"}; +} + +#moveDownCaracteristicMappingButton { + actionIcon: down; + text: "tutti.editProtocol.action.moveDownCaracteristicMapping"; + toolTipText: "tutti.editProtocol.action.moveDownCaracteristicMapping.tip"; + i18nMnemonic: "tutti.editProtocol.action.moveDownCaracteristicMapping.mnemonic"; + enabled: {model.isMoveDownCaracteristicMappingEnabled()}; + _simpleAction: {fr.ifremer.tutti.ui.swing.content.protocol.actions.MoveDownCaracteristicMappingAction.class}; + _help: {"tutti.editProtocol.action.moveDownCaracteristicMapping.help"}; } \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.jaxx index 7be67a1..dcdd35b 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.jaxx @@ -73,6 +73,8 @@ <JPopupMenu id='caracteristicMappingTablePopup'> <JMenuItem id='removeCaracteristicMappingButton'/> + <JMenuItem id='moveUpCaracteristicMappingButton'/> + <JMenuItem id='moveDownCaracteristicMappingButton'/> </JPopupMenu> <JTabbedPane id='tabPanel' diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java index 9dfd3c4..dd36035 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java @@ -34,12 +34,7 @@ import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.persistence.entities.data.FishingOperations; import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel; import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModelEntry; -import fr.ifremer.tutti.persistence.entities.protocol.CaracteristicMappingRow; -import fr.ifremer.tutti.persistence.entities.protocol.CaracteristicType; -import fr.ifremer.tutti.persistence.entities.protocol.OperationFieldMappingRow; -import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocol; -import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; -import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocols; +import fr.ifremer.tutti.persistence.entities.protocol.*; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.persistence.entities.referential.Speciess; @@ -67,28 +62,16 @@ import org.jdesktop.swingx.table.TableColumnExt; import org.nuiton.decorator.Decorator; import org.nuiton.jaxx.application.swing.util.CloseableUI; -import javax.swing.JComboBox; -import javax.swing.JComponent; -import javax.swing.JTabbedPane; -import javax.swing.JTable; -import javax.swing.ListSelectionModel; -import javax.swing.event.ChangeEvent; -import javax.swing.event.ChangeListener; -import javax.swing.event.ListSelectionEvent; -import javax.swing.event.ListSelectionListener; -import javax.swing.event.TableModelEvent; -import javax.swing.event.TableModelListener; +import javax.swing.*; +import javax.swing.event.*; import javax.swing.table.DefaultTableCellRenderer; import javax.swing.table.JTableHeader; import javax.swing.table.TableColumnModel; -import java.awt.Component; +import java.awt.*; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; -import java.util.ArrayList; -import java.util.Collection; +import java.util.*; import java.util.List; -import java.util.Map; -import java.util.Set; import static org.nuiton.i18n.I18n.n; import static org.nuiton.i18n.I18n.t; @@ -502,8 +485,27 @@ public class EditProtocolUIHandler extends AbstractTuttiUIHandler<EditProtocolUI caracteristicsMappingTable.getSelectionModel().addListSelectionListener(new ListSelectionListener() { @Override public void valueChanged(ListSelectionEvent e) { - ListSelectionModel source = (ListSelectionModel) e.getSource(); - getModel().setRemoveCaracteristicMappingEnabled(!source.isSelectionEmpty()); + + int rowIndex = getCaracteristicsMappingTable().getSelectedRow(); + + boolean enableRemoveCaracteristicMapping = false; + boolean enableMoveUpCaracteristicMapping = false; + boolean enableMoveDownCaracteristicMapping = false; + + if (rowIndex != -1) { + + // there is a selected row + enableRemoveCaracteristicMapping = true; + + enableMoveUpCaracteristicMapping = rowIndex > 0; + + enableMoveDownCaracteristicMapping = rowIndex < getCaracteristicsMappingTable().getModel().getRowCount() - 1; + } + EditProtocolUIModel model = getModel(); + model.setRemoveCaracteristicMappingEnabled(enableRemoveCaracteristicMapping); + model.setMoveUpCaracteristicMappingEnabled(enableMoveUpCaracteristicMapping); + model.setMoveDownCaracteristicMappingEnabled(enableMoveDownCaracteristicMapping); + } }); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIModel.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIModel.java index 11d4055..f4a6bbc 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIModel.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIModel.java @@ -68,6 +68,10 @@ public class EditProtocolUIModel extends AbstractTuttiBeanUIModel<TuttiProtocol, public static final String PROPERTY_REMOVE_CARACTERISTIC_MAPPING_ENABLED = "removeCaracteristicMappingEnabled"; + public static final String PROPERTY_MOVE_UP_CARACTERISTIC_MAPPING_ENABLED = "moveUpCaracteristicMappingEnabled"; + + public static final String PROPERTY_MOVE_DOWN_CARACTERISTIC_MAPPING_ENABLED = "moveDownCaracteristicMappingEnabled"; + public static final String PROPERTY_IMPORTED = "imported"; public static final String PROPERTY_CLONED = "cloned"; @@ -118,6 +122,10 @@ public class EditProtocolUIModel extends AbstractTuttiBeanUIModel<TuttiProtocol, protected boolean removeCaracteristicMappingEnabled; + protected boolean moveUpCaracteristicMappingEnabled; + + protected boolean moveDownCaracteristicMappingEnabled; + protected List<Species> allSpecies; protected List<Species> allSynonyms; @@ -267,6 +275,24 @@ public class EditProtocolUIModel extends AbstractTuttiBeanUIModel<TuttiProtocol, firePropertyChange(PROPERTY_REMOVE_CARACTERISTIC_MAPPING_ENABLED, null, removeCaracteristicMappingEnabled); } + public boolean isMoveUpCaracteristicMappingEnabled() { + return moveUpCaracteristicMappingEnabled; + } + + public void setMoveUpCaracteristicMappingEnabled(boolean moveUpCaracteristicMappingEnabled) { + this.moveUpCaracteristicMappingEnabled = moveUpCaracteristicMappingEnabled; + firePropertyChange(PROPERTY_MOVE_UP_CARACTERISTIC_MAPPING_ENABLED, null, moveUpCaracteristicMappingEnabled); + } + + public boolean isMoveDownCaracteristicMappingEnabled() { + return moveDownCaracteristicMappingEnabled; + } + + public void setMoveDownCaracteristicMappingEnabled(boolean moveDownCaracteristicMappingEnabled) { + this.moveDownCaracteristicMappingEnabled = moveDownCaracteristicMappingEnabled; + firePropertyChange(PROPERTY_MOVE_DOWN_CARACTERISTIC_MAPPING_ENABLED, null, moveDownCaracteristicMappingEnabled); + } + public boolean isImported() { return imported; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/MoveDownCaracteristicMappingAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/MoveDownCaracteristicMappingAction.java new file mode 100644 index 0000000..cc4aad1 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/MoveDownCaracteristicMappingAction.java @@ -0,0 +1,58 @@ +package fr.ifremer.tutti.ui.swing.content.protocol.actions; + +/* + * #%L + * Tutti :: UI + * $Id:$ + * $HeadURL:$ + * %% + * Copyright (C) 2012 - 2015 Ifremer + * %% + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program. If not, see + * <http://www.gnu.org/licenses/gpl-3.0.html>. + * #L% + */ + +import com.google.common.base.Preconditions; +import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class MoveDownCaracteristicMappingAction extends SimpleActionSupport<EditProtocolUI> { + + private static final long serialVersionUID = 1L; + + public MoveDownCaracteristicMappingAction(EditProtocolUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(EditProtocolUI ui) { + + int selectedRow = ui.getCaracteristicsMappingTable().getSelectedRow(); + Preconditions.checkState(selectedRow > -1); + int newRow = selectedRow + 1; + + ui.getHandler().getCaracteristicMappingTableModel().permuteEntry(selectedRow, newRow); + ui.getCaracteristicsMappingTable().getSelectionModel().setSelectionInterval(newRow, newRow); + ui.getModel().setModify(true); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/MoveUpCaracteristicMappingAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/MoveUpCaracteristicMappingAction.java new file mode 100644 index 0000000..e1e3839 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/MoveUpCaracteristicMappingAction.java @@ -0,0 +1,59 @@ +package fr.ifremer.tutti.ui.swing.content.protocol.actions; + +/* + * #%L + * Tutti :: UI + * $Id:$ + * $HeadURL:$ + * %% + * Copyright (C) 2012 - 2015 Ifremer + * %% + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program. If not, see + * <http://www.gnu.org/licenses/gpl-3.0.html>. + * #L% + */ + +import com.google.common.base.Preconditions; +import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; +import fr.ifremer.tutti.ui.swing.util.actions.SimpleActionSupport; + +/** + * Created on 3/7/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.15 + */ +public class MoveUpCaracteristicMappingAction extends SimpleActionSupport<EditProtocolUI> { + + private static final long serialVersionUID = 1L; + + public MoveUpCaracteristicMappingAction(EditProtocolUI ui) { + super(ui); + } + + @Override + protected void onActionPerformed(EditProtocolUI ui) { + + int selectedRow = ui.getCaracteristicsMappingTable().getSelectedRow(); + Preconditions.checkState(selectedRow > -1); + + int newRow = selectedRow - 1; + + ui.getHandler().getCaracteristicMappingTableModel().permuteEntry(newRow, selectedRow); + ui.getCaracteristicsMappingTable().getSelectionModel().setSelectionInterval(newRow, newRow); + ui.getModel().setModify(true); + + } + +} \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/table/AbstractTuttiTableModel.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/table/AbstractTuttiTableModel.java new file mode 100644 index 0000000..75d8b07 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/table/AbstractTuttiTableModel.java @@ -0,0 +1,28 @@ +package fr.ifremer.tutti.ui.swing.util.table; + +import org.jdesktop.swingx.table.TableColumnModelExt; +import org.nuiton.jaxx.application.swing.table.AbstractApplicationTableModel; + +import java.io.Serializable; + +/** + * @author Kevin Morin (Code Lutin) + * @since 4.2 + */ +public abstract class AbstractTuttiTableModel<E extends Serializable> extends AbstractApplicationTableModel<E> { + + public AbstractTuttiTableModel(TableColumnModelExt columnModel, + boolean createNewRow, + boolean createEmptyRowIsEmpty) { + super(columnModel, createNewRow, createEmptyRowIsEmpty); + } + + public void permuteEntry(int firstRow, int lastRow) { + E firstR = getRows().get(firstRow); + + getRows().remove(firstRow); + getRows().add(lastRow, firstR); + + fireTableRowsUpdated(firstRow, lastRow); + } +} diff --git a/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties b/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties index 5cc27a9..9474746 100644 --- a/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties +++ b/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties @@ -1007,6 +1007,12 @@ tutti.editProtocol.action.importProtocolSpeciesFile= tutti.editProtocol.action.importSpecies.speciesInBenthos= tutti.editProtocol.action.importSpecies.speciesInBenthos.title= tutti.editProtocol.action.loadImportColumns.success= +tutti.editProtocol.action.moveDownCaracteristicMapping= +tutti.editProtocol.action.moveDownCaracteristicMapping.mnemonic= +tutti.editProtocol.action.moveDownCaracteristicMapping.tip= +tutti.editProtocol.action.moveUpCaracteristicMapping= +tutti.editProtocol.action.moveUpCaracteristicMapping.mnemonic= +tutti.editProtocol.action.moveUpCaracteristicMapping.tip= tutti.editProtocol.action.removeBenthosProtocol= tutti.editProtocol.action.removeBenthosProtocol.mnemonic= tutti.editProtocol.action.removeBenthosProtocol.tip= diff --git a/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties b/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties index 419b881..1b34c43 100644 --- a/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties +++ b/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties @@ -973,6 +973,12 @@ tutti.editProtocol.action.importProtocolSpecies.speciesInBenthos.title=Espèces tutti.editProtocol.action.importProtocolSpecies.tip=Importer les espèces dans le protocole tutti.editProtocol.action.importProtocolSpeciesFile=Importer tutti.editProtocol.action.loadImportColumns.success=%s colonnes importées avec succès +tutti.editProtocol.action.moveDownCaracteristicMapping=Descendre +tutti.editProtocol.action.moveDownCaracteristicMapping.mnemonic=D +tutti.editProtocol.action.moveDownCaracteristicMapping.tip=Descendre l'entrée sélectionnée +tutti.editProtocol.action.moveUpCaracteristicMapping=Monter +tutti.editProtocol.action.moveUpCaracteristicMapping.mnemonic=M +tutti.editProtocol.action.moveUpCaracteristicMapping.tip=Monter l'entrée sélectionnée tutti.editProtocol.action.removeBenthosProtocol=Supprimer les espèces du benthos tutti.editProtocol.action.removeBenthosProtocol.mnemonic=S tutti.editProtocol.action.removeBenthosProtocol.tip=Supprimer les les espèces du benthos sélectionnés -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.