This is an automated email from the git hooks/post-receive script. New change to branch feature/8035 in repository tutti. See http://git.codelutin.com/tutti.git at c21f7d2 Ajout d'un hightlighter pour grouper et alterner la couleur de fond pour les espèces (See #8035) This branch includes the following new commits: new c21f7d2 Ajout d'un hightlighter pour grouper et alterner la couleur de fond pour les espèces (See #8035) The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit c21f7d22c39da06955f28f884b29a7b7e1cda634 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Mar 1 18:02:41 2016 +0100 Ajout d'un hightlighter pour grouper et alterner la couleur de fond pour les espèces (See #8035) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/8035 in repository tutti. See http://git.codelutin.com/tutti.git commit c21f7d22c39da06955f28f884b29a7b7e1cda634 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Mar 1 18:02:41 2016 +0100 Ajout d'un hightlighter pour grouper et alterner la couleur de fond pour les espèces (See #8035) --- .../CalcifiedPiecesSamplingEditorTableModel.java | 24 ++++++++++++++++++++++ .../CalcifiedPiecesSamplingEditorUIHandler.java | 12 +++++++++++ 2 files changed, 36 insertions(+) diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/calcifiedpiecessampling/CalcifiedPiecesSamplingEditorTableModel.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/calcifiedpiecessampling/CalcifiedPiecesSamplingEditorTableModel.java index 823707b..d5c3a37 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/calcifiedpiecessampling/CalcifiedPiecesSamplingEditorTableModel.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/calcifiedpiecessampling/CalcifiedPiecesSamplingEditorTableModel.java @@ -30,7 +30,10 @@ 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.LinkedHashSet; import java.util.List; +import java.util.Objects; +import java.util.Set; import static org.nuiton.i18n.I18n.n; @@ -150,4 +153,25 @@ public class CalcifiedPiecesSamplingEditorTableModel extends AbstractApplication } return result; } + + public boolean isSpeciesOrderEven(int rowIndex) { + + CalcifiedPiecesSamplingEditorRowModel selectedRow = getEntry(rowIndex); + Integer selectedSpeciesReferenceTaxonId = selectedRow.getProtocolSpecies().getSpeciesReferenceTaxonId(); + + Set<Integer> speciesReferenceTaxonIds = new LinkedHashSet<>(); + for (CalcifiedPiecesSamplingEditorRowModel row : rows) { + Integer speciesReferenceTaxonId = row.getProtocolSpecies().getSpeciesReferenceTaxonId(); + speciesReferenceTaxonIds.add(speciesReferenceTaxonId); + if (Objects.equals(selectedSpeciesReferenceTaxonId, speciesReferenceTaxonId)) { + break; + } + } + int nbSpecies = speciesReferenceTaxonIds.size(); + + // Si on a trouvé des espèces, on doit alors incrémenter de 1 car l'espèce «0» est en fait la première trouvée ^^ + return nbSpecies == 0 || ((nbSpecies + 1) % 2 == 0); + + } + } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/calcifiedpiecessampling/CalcifiedPiecesSamplingEditorUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/calcifiedpiecessampling/CalcifiedPiecesSamplingEditorUIHandler.java index 879c675..2af9fc8 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/calcifiedpiecessampling/CalcifiedPiecesSamplingEditorUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/calcifiedpiecessampling/CalcifiedPiecesSamplingEditorUIHandler.java @@ -31,11 +31,13 @@ import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIModel; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; import fr.ifremer.tutti.ui.swing.util.TuttiUI; +import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; import jaxx.runtime.SwingUtil; import jaxx.runtime.swing.JAXXWidgetUtil; import jaxx.runtime.swing.editor.cell.NumberCellEditor; import jaxx.runtime.validator.swing.SwingValidator; import org.jdesktop.swingx.JXTable; +import org.jdesktop.swingx.decorator.HighlightPredicate; import org.jdesktop.swingx.table.DefaultTableColumnModelExt; import org.jdesktop.swingx.table.TableColumnExt; @@ -168,6 +170,16 @@ public class CalcifiedPiecesSamplingEditorUIHandler extends AbstractTuttiUIHandl .map(EditProtocolSpeciesRowModel::getSpecies) .collect(Collectors.toList())); }); + + HighlightPredicate speciesOrderEven = (renderer, adapter) -> { + int rowIndex = adapter.convertRowIndexToModel(adapter.row); + return tableModel.isSpeciesOrderEven(rowIndex); + }; + cpsTable.addHighlighter(TuttiUIUtil.newBackgroundColorHighlighter(speciesOrderEven, Color.WHITE)); + cpsTable.addHighlighter(TuttiUIUtil.newBackgroundColorHighlighter( + new HighlightPredicate.NotHighlightPredicate(speciesOrderEven), + getConfig().getColorAlternateRow())); + } protected DefaultTableColumnModelExt initTableColumnModel() { -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm