r808 - in trunk: tutti-persistence/src/main/xmi tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics tutti-ui-swing/src/main/resources/i18
Author: kmorin Date: 2013-04-16 19:04:47 +0200 (Tue, 16 Apr 2013) New Revision: 808 Url: http://forge.codelutin.com/projects/tutti/repository/revisions/808 Log: fixes #2304 [CAPTURE ACCIDENTELLE] manque colonne "Autres caract?\195?\169ristiques" comme dans "observations individuelles" Added: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapColumnRowModel.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapColumnUIHandler.java Removed: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/caracteristics/ Modified: trunk/tutti-persistence/src/main/xmi/tutti-persistence.zargo trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchRowModel.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchTableModel.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchRowModel.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapCellComponent.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorRowModel.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorTableModel.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUIModel.java trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties Modified: trunk/tutti-persistence/src/main/xmi/tutti-persistence.zargo =================================================================== (Binary files differ) Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUI.jaxx 2013-04-16 15:41:25 UTC (rev 807) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUI.jaxx 2013-04-16 17:04:47 UTC (rev 808) @@ -39,7 +39,7 @@ fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchUI fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchUI fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.CreateIndividualObservationBatchUI - fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.caracteristics.CaracteristicMapEditorUI + fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapEditorUI fr.ifremer.tutti.ui.swing.content.operation.catches.plankton.PlanktonBatchUI fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI fr.ifremer.tutti.ui.swing.content.operation.catches.species.frequency.SpeciesFrequencyUI @@ -390,6 +390,11 @@ <CreateAccidentalBatchUI id='accidentalTabCreateBatch' constructorParams='this'/> </JXTitledPanel> + <JXTitledPanel id='accidentalCaracteristicMapEditorReminderLabel' + constraints='EditCatchesUIHandler.EDIT_CARACTERISTICS_CARD'> + <CaracteristicMapEditorUI id='accidentalCaracteristicMapEditor' + constructorParams='accidentalTabContent'/> + </JXTitledPanel> </JPanel> </tab> <tab id='individualObservationTab'> @@ -406,9 +411,9 @@ id='individualObservationTabCreateBatch' constructorParams='this'/> </JXTitledPanel> - <JXTitledPanel id='CaracteristicMapEditorReminderLabel' + <JXTitledPanel id='individualObservationCaracteristicMapEditorReminderLabel' constraints='EditCatchesUIHandler.EDIT_CARACTERISTICS_CARD'> - <CaracteristicMapEditorUI id='caracteristicMapEditor' + <CaracteristicMapEditorUI id='individualObservationCaracteristicMapEditor' constructorParams='individualObservationTabContent'/> </JXTitledPanel> </JPanel> Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java 2013-04-16 15:41:25 UTC (rev 807) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java 2013-04-16 17:04:47 UTC (rev 808) @@ -459,8 +459,13 @@ tuttiUi = ui.getAccidentalTabCreateBatch(); titlePanel = ui.getAccidentalTabCreateBatchReminderLabel(); title = n_("tutti.createAccidentalBatch.title"); + + } else if (EDIT_CARACTERISTICS_CARD.equals(card)) { + titlePanel = ui.getAccidentalCaracteristicMapEditorReminderLabel(); + title = n_("tutti.editCaracteristics.title"); } + if (tuttiUi != null) { registerValidators(tuttiUi.getHandler().getValidator()); } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchRowModel.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchRowModel.java 2013-04-16 15:41:25 UTC (rev 807) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchRowModel.java 2013-04-16 17:04:47 UTC (rev 808) @@ -25,6 +25,7 @@ */ import com.google.common.collect.Lists; +import fr.ifremer.tutti.persistence.entities.CaracteristicMap; import fr.ifremer.tutti.persistence.entities.TuttiBeanFactory; import fr.ifremer.tutti.persistence.entities.data.AccidentalBatch; import fr.ifremer.tutti.persistence.entities.data.AttachementObjectTypeEnum; @@ -35,6 +36,7 @@ import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiBeanUIModel; import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentModelAware; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapColumnRowModel; import org.nuiton.util.beans.Binder; import org.nuiton.util.beans.BinderFactory; @@ -48,7 +50,7 @@ * @since 0.2 */ public class AccidentalBatchRowModel extends AbstractTuttiBeanUIModel<AccidentalBatch, AccidentalBatchRowModel> - implements AttachmentModelAware, AccidentalBatch { + implements AttachmentModelAware, AccidentalBatch, CaracteristicMapColumnRowModel { private static final long serialVersionUID = 1L; @@ -178,6 +180,18 @@ } @Override + public CaracteristicMap getCaracteristics() { + return editObject.getCaracteristics(); + } + + @Override + public void setCaracteristics(CaracteristicMap caracteristics) { + Object oldValue = getCaracteristics(); + editObject.setCaracteristics(caracteristics); + firePropertyChange(PROPERTY_CARACTERISTICS, oldValue, caracteristics); + } + + @Override public String getComment() { return editObject.getComment(); } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchTableModel.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchTableModel.java 2013-04-16 15:41:25 UTC (rev 807) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchTableModel.java 2013-04-16 17:04:47 UTC (rev 808) @@ -25,6 +25,7 @@ */ import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchRowModel; +import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchRowModel; import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableModel; import fr.ifremer.tutti.ui.swing.util.table.ColumnIdentifier; import org.jdesktop.swingx.table.TableColumnModelExt; @@ -39,36 +40,41 @@ private static final long serialVersionUID = 1L; - public static final ColumnIdentifier<BenthosBatchRowModel> SPECIES = ColumnIdentifier.newId( + public static final ColumnIdentifier<AccidentalBatchRowModel> SPECIES = ColumnIdentifier.newId( AccidentalBatchRowModel.PROPERTY_SPECIES, n_("tutti.editAccidentalBatch.table.header.species"), n_("tutti.editAccidentalBatch.table.header.species.tip")); - public static final ColumnIdentifier<BenthosBatchRowModel> GENDER = ColumnIdentifier.newId( + public static final ColumnIdentifier<AccidentalBatchRowModel> GENDER = ColumnIdentifier.newId( AccidentalBatchRowModel.PROPERTY_GENDER, n_("tutti.editAccidentalBatch.table.header.gender"), n_("tutti.editAccidentalBatch.table.header.gender.tip")); - public static final ColumnIdentifier<BenthosBatchRowModel> WEIGHT = ColumnIdentifier.newId( + public static final ColumnIdentifier<AccidentalBatchRowModel> WEIGHT = ColumnIdentifier.newId( AccidentalBatchRowModel.PROPERTY_WEIGHT, n_("tutti.editAccidentalBatch.table.header.weight"), n_("tutti.editAccidentalBatch.table.header.weight.tip")); - public static final ColumnIdentifier<BenthosBatchRowModel> SIZE = ColumnIdentifier.newId( + public static final ColumnIdentifier<AccidentalBatchRowModel> SIZE = ColumnIdentifier.newId( AccidentalBatchRowModel.PROPERTY_SIZE, n_("tutti.editAccidentalBatch.table.header.size"), n_("tutti.editAccidentalBatch.table.header.size.tip")); - public static final ColumnIdentifier<BenthosBatchRowModel> LENGTH_STEP_CARACTERISTIC = ColumnIdentifier.newId( + public static final ColumnIdentifier<AccidentalBatchRowModel> LENGTH_STEP_CARACTERISTIC = ColumnIdentifier.newId( AccidentalBatchRowModel.PROPERTY_LENGTH_STEP_CARACTERISTIC, n_("tutti.editAccidentalBatch.table.header.lengthStepCaracteristic"), n_("tutti.editAccidentalBatch.table.header.lengthStepCaracteristic.tip")); - public static final ColumnIdentifier<BenthosBatchRowModel> DEAD_OR_ALIVE = ColumnIdentifier.newId( + public static final ColumnIdentifier<AccidentalBatchRowModel> DEAD_OR_ALIVE = ColumnIdentifier.newId( AccidentalBatchRowModel.PROPERTY_DEAD_OR_ALIVE, n_("tutti.editAccidentalBatch.table.header.deadOrAlive"), n_("tutti.editAccidentalBatch.table.header.deadOrAlive.tip")); + public static final ColumnIdentifier<AccidentalBatchRowModel> OTHER_CARACTERISTICS = ColumnIdentifier.newId( + IndividualObservationBatchRowModel.PROPERTY_CARACTERISTICS, + n_("tutti.editAccidentalBatch.table.header.otherCaracteristics"), + n_("tutti.editAccidentalBatch.table.header.otherCaracteristics.tip")); + public static final ColumnIdentifier<AccidentalBatchRowModel> COMMENT = ColumnIdentifier.newId( AccidentalBatchRowModel.PROPERTY_COMMENT, n_("tutti.editAccidentalBatch.table.header.comment"), Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUIHandler.java 2013-04-16 15:41:25 UTC (rev 807) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUIHandler.java 2013-04-16 17:04:47 UTC (rev 808) @@ -45,6 +45,9 @@ import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentCellEditor; import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentCellRenderer; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapCellComponent; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapColumnUIHandler; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapEditorUI; import fr.ifremer.tutti.ui.swing.util.comment.CommentCellEditor; import fr.ifremer.tutti.ui.swing.util.comment.CommentCellRenderer; import fr.ifremer.tutti.ui.swing.util.table.AbstractSelectTableAction; @@ -71,7 +74,9 @@ * @author tchemit <chemit@codelutin.com> * @since 0.2 */ -public class AccidentalBatchUIHandler extends AbstractTuttiBatchTableUIHandler<AccidentalBatchRowModel, AccidentalBatchUIModel, AccidentalBatchUI> { +public class AccidentalBatchUIHandler + extends AbstractTuttiBatchTableUIHandler<AccidentalBatchRowModel, AccidentalBatchUIModel, AccidentalBatchUI> + implements CaracteristicMapColumnUIHandler { /** Logger. */ private static final Log log = @@ -339,6 +344,15 @@ } + { // Other caracteristics column + + addColumnToModel(columnModel, + CaracteristicMapCellComponent.newEditor(ui), + CaracteristicMapCellComponent.newRender(getContext()), + IndividualObservationBatchTableModel.OTHER_CARACTERISTICS); + + } + { // Comment column addColumnToModel(columnModel, @@ -380,6 +394,24 @@ ui.getAccidentalBatchAttachmentsButton().onCloseUI(); } + @Override + public CaracteristicMapEditorUI getCaracteristicMapEditor() { + EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class); + return parent.getAccidentalCaracteristicMapEditor(); + } + + @Override + public void showCaracteristicMapEditor() { + EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class); + parent.getHandler().setAccidentalSelectedCard(EditCatchesUIHandler.EDIT_CARACTERISTICS_CARD); + } + + @Override + public void hideCaracteristicMapEditor() { + EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class); + parent.getHandler().setAccidentalSelectedCard(EditCatchesUIHandler.MAIN_CARD); + } + //------------------------------------------------------------------------// //-- Public methods --// //------------------------------------------------------------------------// Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchRowModel.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchRowModel.java 2013-04-16 15:41:25 UTC (rev 807) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchRowModel.java 2013-04-16 17:04:47 UTC (rev 808) @@ -33,6 +33,7 @@ import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiBeanUIModel; import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentModelAware; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapColumnRowModel; import org.nuiton.util.beans.Binder; import org.nuiton.util.beans.BinderFactory; @@ -44,7 +45,7 @@ * @since 1.4 */ public class IndividualObservationBatchRowModel extends AbstractTuttiBeanUIModel<IndividualObservationBatch, IndividualObservationBatchRowModel> - implements AttachmentModelAware, IndividualObservationBatch { + implements AttachmentModelAware, IndividualObservationBatch, CaracteristicMapColumnRowModel { private static final long serialVersionUID = 1L; Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUIHandler.java 2013-04-16 15:41:25 UTC (rev 807) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUIHandler.java 2013-04-16 17:04:47 UTC (rev 808) @@ -35,7 +35,7 @@ import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; -import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.caracteristics.CaracteristicMapCellComponent; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapCellComponent; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.CreateIndividualObservationBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.create.CreateIndividualObservationBatchUIModel; import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor; @@ -43,6 +43,8 @@ import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentCellEditor; import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentCellRenderer; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapColumnUIHandler; +import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapEditorUI; import fr.ifremer.tutti.ui.swing.util.comment.CommentCellEditor; import fr.ifremer.tutti.ui.swing.util.comment.CommentCellRenderer; import fr.ifremer.tutti.ui.swing.util.table.AbstractSelectTableAction; @@ -70,7 +72,8 @@ * @since 1.4 */ public class IndividualObservationBatchUIHandler - extends AbstractTuttiBatchTableUIHandler<IndividualObservationBatchRowModel, IndividualObservationBatchUIModel, IndividualObservationBatchUI> { + extends AbstractTuttiBatchTableUIHandler<IndividualObservationBatchRowModel, IndividualObservationBatchUIModel, IndividualObservationBatchUI> + implements CaracteristicMapColumnUIHandler { private static final Log log = LogFactory.getLog(IndividualObservationBatchUIHandler.class); @@ -331,7 +334,6 @@ { // Other caracteristics column - Color computedDataColor = getConfig().getColorComputedWeights(); addColumnToModel(columnModel, CaracteristicMapCellComponent.newEditor(ui), CaracteristicMapCellComponent.newRender(getContext()), @@ -391,6 +393,24 @@ ui.getIndividualObservationBatchAttachmentsButton().onCloseUI(); } + @Override + public CaracteristicMapEditorUI getCaracteristicMapEditor() { + EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class); + return parent.getIndividualObservationCaracteristicMapEditor(); + } + + @Override + public void showCaracteristicMapEditor() { + EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class); + parent.getHandler().setIndividualObservationSelectedCard(EditCatchesUIHandler.EDIT_CARACTERISTICS_CARD); + } + + @Override + public void hideCaracteristicMapEditor() { + EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class); + parent.getHandler().setIndividualObservationSelectedCard(EditCatchesUIHandler.MAIN_CARD); + } + //------------------------------------------------------------------------// //-- Public methods --// //------------------------------------------------------------------------// Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapCellComponent.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/caracteristics/CaracteristicMapCellComponent.java 2013-04-16 15:37:31 UTC (rev 806) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapCellComponent.java 2013-04-16 17:04:47 UTC (rev 808) @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.caracteristics; +package fr.ifremer.tutti.ui.swing.util.caracteristics; /* * #%L @@ -29,10 +29,9 @@ import fr.ifremer.tutti.ui.swing.TuttiUIContext; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; -import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchRowModel; -import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchTableModel; -import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchUI; +import fr.ifremer.tutti.ui.swing.util.TuttiUI; import fr.ifremer.tutti.ui.swing.util.table.AbstractSelectTableAction; +import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableModel; import fr.ifremer.tutti.ui.swing.util.table.ColumnIdentifier; import jaxx.runtime.SwingUtil; import org.apache.commons.logging.Log; @@ -112,7 +111,7 @@ return new CaracteristicMapCellRenderer(context); } - public static TableCellEditor newEditor(IndividualObservationBatchUI ui) { + public static TableCellEditor newEditor(TuttiUI ui) { return new CaracteristicMapCellEditor(ui); } @@ -122,21 +121,19 @@ protected final CaracteristicMapCellComponent component; - protected final IndividualObservationBatchUI ui; + protected final TuttiUI ui; protected JTable table; - protected IndividualObservationBatchTableModel tableModel; + protected AbstractTuttiTableModel<CaracteristicMapColumnRowModel> tableModel; - protected ColumnIdentifier<IndividualObservationBatchRowModel> columnIdentifier; + protected CaracteristicMapColumnRowModel editRow; - protected IndividualObservationBatchRowModel editRow; - protected Integer rowIndex; protected Integer columnIndex; - public CaracteristicMapCellEditor(IndividualObservationBatchUI ui) { + public CaracteristicMapCellEditor(TuttiUI ui) { this.ui = ui; component = new CaracteristicMapCellComponent(ui.getHandler().getContext()); component.setBorder(new LineBorder(Color.BLACK)); @@ -172,12 +169,10 @@ log.info("Will edit frequencies for row: " + rowIndex); } - EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class); - CaracteristicMapEditorUI caracteristicMapEditor = parent.getCaracteristicMapEditor(); + CaracteristicMapColumnUIHandler handler = (CaracteristicMapColumnUIHandler) ui.getHandler(); + CaracteristicMapEditorUI caracteristicMapEditor = handler.getCaracteristicMapEditor(); caracteristicMapEditor.getHandler().editBatch(editRow, this); - - // open frequency editor - parent.getHandler().setIndividualObservationSelectedCard(EditCatchesUIHandler.EDIT_CARACTERISTICS_CARD); + handler.showCaracteristicMapEditor(); } public void validateEdition(CaracteristicMapEditorUIModel caracteristicMapEditorModel) { @@ -200,18 +195,19 @@ table.requestFocus(); } + public void closeEditor() { + CaracteristicMapColumnUIHandler handler = (CaracteristicMapColumnUIHandler) ui.getHandler(); + handler.hideCaracteristicMapEditor(); + } + @Override public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) { - tableModel = (IndividualObservationBatchTableModel) table.getModel(); + tableModel = (AbstractTuttiTableModel) table.getModel(); this.table = table; - columnIdentifier = IndividualObservationBatchTableModel.OTHER_CARACTERISTICS; - if (log.isDebugEnabled()) { - log.debug("Set columnIdentifier (" + column + ") :: " + columnIdentifier.getPropertyName()); - } rowIndex = row; columnIndex = column; @@ -229,14 +225,7 @@ Preconditions.checkNotNull(editRow, "No editRow found in editor."); - Object result = null; - if (columnIdentifier == IndividualObservationBatchTableModel.OTHER_CARACTERISTICS) { - result = editRow.getCaracteristics(); - } - if (log.isDebugEnabled()) { - log.debug("editor value (" + columnIdentifier + "): " + result); - } - + Object result = editRow.getCaracteristics(); return result; } Added: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapColumnRowModel.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapColumnRowModel.java (rev 0) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapColumnRowModel.java 2013-04-16 17:04:47 UTC (rev 808) @@ -0,0 +1,15 @@ +package fr.ifremer.tutti.ui.swing.util.caracteristics; + +import fr.ifremer.tutti.persistence.entities.CaracteristicMap; + +import java.io.Serializable; + +/** + * @author kmorin <kmorin@codelutin.com> + */ +public interface CaracteristicMapColumnRowModel extends Serializable { + + CaracteristicMap getCaracteristics(); + + void setCaracteristics(CaracteristicMap map); +} Added: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapColumnUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapColumnUIHandler.java (rev 0) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapColumnUIHandler.java 2013-04-16 17:04:47 UTC (rev 808) @@ -0,0 +1,14 @@ +package fr.ifremer.tutti.ui.swing.util.caracteristics; + +/** + * @author kmorin <kmorin@codelutin.com> + * @since 2.0 + */ +public interface CaracteristicMapColumnUIHandler { + + CaracteristicMapEditorUI getCaracteristicMapEditor(); + + void showCaracteristicMapEditor(); + + void hideCaracteristicMapEditor(); +} Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorRowModel.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/caracteristics/CaracteristicMapEditorRowModel.java 2013-04-16 15:37:31 UTC (rev 806) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorRowModel.java 2013-04-16 17:04:47 UTC (rev 808) @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.caracteristics; +package fr.ifremer.tutti.ui.swing.util.caracteristics; /* * #%L Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorTableModel.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/caracteristics/CaracteristicMapEditorTableModel.java 2013-04-16 15:37:31 UTC (rev 806) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorTableModel.java 2013-04-16 17:04:47 UTC (rev 808) @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.caracteristics; +package fr.ifremer.tutti.ui.swing.util.caracteristics; /* * #%L Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/caracteristics/CaracteristicMapEditorUIHandler.java 2013-04-16 15:37:31 UTC (rev 806) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUIHandler.java 2013-04-16 17:04:47 UTC (rev 808) @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.caracteristics; +package fr.ifremer.tutti.ui.swing.util.caracteristics; /* * #%L @@ -25,21 +25,14 @@ import com.google.common.base.Preconditions; import com.google.common.collect.Lists; import fr.ifremer.tutti.persistence.entities.CaracteristicMap; -import fr.ifremer.tutti.persistence.entities.TuttiEntities; -import fr.ifremer.tutti.persistence.entities.data.IndividualObservationBatch; -import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.service.DecoratorService; -import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; -import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; -import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchRowModel; import fr.ifremer.tutti.ui.swing.util.Cancelable; import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor; import fr.ifremer.tutti.ui.swing.util.TuttiUI; import fr.ifremer.tutti.ui.swing.util.editor.CaracteristicValueEditor; import fr.ifremer.tutti.ui.swing.util.editor.CaracteristicValueRenderer; import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableUIHandler; -import jaxx.runtime.SwingUtil; import jaxx.runtime.swing.editor.bean.BeanFilterableComboBox; import jaxx.runtime.validator.swing.SwingValidator; import org.apache.commons.logging.Log; @@ -50,7 +43,7 @@ import javax.swing.JComponent; import java.util.List; -import static fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.caracteristics.CaracteristicMapCellComponent.CaracteristicMapCellEditor; +import static fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapCellComponent.CaracteristicMapCellEditor; /** * @author kmorin <kmorin@codelutin.com> @@ -177,8 +170,7 @@ // when canceling always invalid model (in that way) getModel().setValid(false); - EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class); - parent.getHandler().setIndividualObservationSelectedCard(EditCatchesUIHandler.MAIN_CARD); + caracteristicMapCellEditor.closeEditor(); } @Override @@ -205,14 +197,6 @@ return new CaracteristicMapEditorUIModel(); } - protected CaracteristicMap getCaracteristics(IndividualObservationBatch individualObservation) { - return individualObservation.getCaracteristics(); - } - - protected List<String> getProtocolPmfmIds(TuttiProtocol protocol) { - return protocol.getGearUseFeaturePmfmId(); - } - protected void saveRow(CaracteristicMapEditorRowModel row) { if (row.isValid()) { @@ -248,7 +232,7 @@ recomputeRowValidState(row); } - public void editBatch(IndividualObservationBatchRowModel individualObservation, + public void editBatch(CaracteristicMapColumnRowModel caracteristicMapColumnRowModel, CaracteristicMapCellEditor caracteristicMapCellEditor) { this.caracteristicMapCellEditor = caracteristicMapCellEditor; @@ -256,31 +240,16 @@ CaracteristicMapEditorTableModel tableModel = getTableModel(); CaracteristicMapEditorUIModel model = getModel(); - CaracteristicMap caracteristicMap = getCaracteristics(individualObservation); + CaracteristicMap caracteristicMap = caracteristicMapColumnRowModel.getCaracteristics(); if (caracteristicMap == null) { caracteristicMap = new CaracteristicMap(); } model.setCaracteristicMap(caracteristicMap); - TuttiProtocol protocol = getDataContext().getProtocol(); - List<String> pmfmIds = Lists.newArrayList(); - if (protocol != null) { - List<String> protocolPmfmId = getProtocolPmfmIds(protocol); - if (protocolPmfmId != null) { - pmfmIds.addAll(protocolPmfmId); - } - } - List<CaracteristicMapEditorRowModel> rows = Lists.newArrayList(); List<Caracteristic> caracteristics = Lists.newArrayList(caracteristicMap.keySet()); List<Caracteristic> availableCaracteristics = model.getAvailableCaracteristics(); - for (String id : pmfmIds) { - Caracteristic caracteristic = TuttiEntities.findById(availableCaracteristics, id); - if (!caracteristics.contains(caracteristic)) { - caracteristics.add(caracteristic); - } - } for (Caracteristic key : caracteristics) { CaracteristicMapEditorRowModel newRow = tableModel.createNewRow(); Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUIModel.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/caracteristics/CaracteristicMapEditorUIModel.java 2013-04-16 15:37:31 UTC (rev 806) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUIModel.java 2013-04-16 17:04:47 UTC (rev 808) @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.caracteristics; +package fr.ifremer.tutti.ui.swing.util.caracteristics; /* * #%L Modified: trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties =================================================================== --- trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties 2013-04-16 15:41:25 UTC (rev 807) +++ trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties 2013-04-16 17:04:47 UTC (rev 808) @@ -242,6 +242,8 @@ tutti.editAccidentalBatch.table.header.gender.tip= tutti.editAccidentalBatch.table.header.lengthStepCaracteristic= tutti.editAccidentalBatch.table.header.lengthStepCaracteristic.tip= +tutti.editAccidentalBatch.table.header.otherCaracteristics= +tutti.editAccidentalBatch.table.header.otherCaracteristics.tip= tutti.editAccidentalBatch.table.header.size= tutti.editAccidentalBatch.table.header.size.tip= tutti.editAccidentalBatch.table.header.species= Modified: trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties =================================================================== --- trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties 2013-04-16 15:41:25 UTC (rev 807) +++ trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties 2013-04-16 17:04:47 UTC (rev 808) @@ -243,6 +243,8 @@ tutti.editAccidentalBatch.table.header.gender.tip=Sexe (Male, femelle, autre...) tutti.editAccidentalBatch.table.header.lengthStepCaracteristic=Classe de taille tutti.editAccidentalBatch.table.header.lengthStepCaracteristic.tip=Classe de taille +tutti.editAccidentalBatch.table.header.otherCaracteristics=Autres caractéristiques +tutti.editAccidentalBatch.table.header.otherCaracteristics.tip=Autres caractéristiques tutti.editAccidentalBatch.table.header.size=Taille tutti.editAccidentalBatch.table.header.size.tip=Taille (l'unité dépend de la classe de taille) tutti.editAccidentalBatch.table.header.species=Espèce
participants (1)
-
kmorin@users.forge.codelutin.com