Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: 4d2d332a by Tony Chemit at 2024-12-10T13:39:45+01:00 Souci de l'UI configuration sur les options de type liste - Closes #2956 - - - - - 1 changed file: - client/core/src/main/java/fr/ird/observe/client/main/body/ClientConfigUI.java Changes: ===================================== client/core/src/main/java/fr/ird/observe/client/main/body/ClientConfigUI.java ===================================== @@ -123,7 +123,6 @@ public class ClientConfigUI extends JXTitledPanel implements WithClientUIContext public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { - String speciesListId = String.valueOf(value); SpeciesListReference speciesList = entityMap.get(speciesListId); return super.getTableCellRendererComponent(table, decorator.decorate(speciesList), isSelected, hasFocus, row, column); @@ -162,13 +161,16 @@ public class ClientConfigUI extends JXTitledPanel implements WithClientUIContext if (value instanceof String) { value = SpeciesListTableCellEditor.this.entityMap.get(String.valueOf(value)); } + if (value==null) { + return; + } component.setSelectedItem((SpeciesListReference) value); } @Override public Object getCellEditorValue() { SpeciesListReference selectedItem = component.getModel().getSelectedItem(); - return selectedItem.getId(); + return selectedItem == null ? null : selectedItem.getId(); } @Override @@ -182,6 +184,10 @@ public class ClientConfigUI extends JXTitledPanel implements WithClientUIContext @Override public boolean stopCellEditing() { + if (component.getModel().getSelectedItem()==null) { + super.cancelCellEditing(); + return true; + } if (component.getConfig().isEditable()) { // Commit edited value. component.getCombobox().actionPerformed(new ActionEvent(SpeciesListTableCellEditor.this, 0, "")); View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/4d2d332a0d5e8e195959f23f94... -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/4d2d332a0d5e8e195959f23f94... You're receiving this email because of your account on gitlab.com.
participants (1)
-
Tony CHEMIT (@tchemit)