Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe

Commits:

1 changed file:

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
    123 123
             public Component getTableCellRendererComponent(JTable table, Object value,
    
    124 124
                                                            boolean isSelected, boolean hasFocus,
    
    125 125
                                                            int row, int column) {
    
    126
    -
    
    127 126
                 String speciesListId = String.valueOf(value);
    
    128 127
                 SpeciesListReference speciesList = entityMap.get(speciesListId);
    
    129 128
                 return super.getTableCellRendererComponent(table, decorator.decorate(speciesList), isSelected, hasFocus, row, column);
    
    ... ... @@ -162,13 +161,16 @@ public class ClientConfigUI extends JXTitledPanel implements WithClientUIContext
    162 161
                         if (value instanceof String) {
    
    163 162
                             value = SpeciesListTableCellEditor.this.entityMap.get(String.valueOf(value));
    
    164 163
                         }
    
    164
    +                    if (value==null) {
    
    165
    +                        return;
    
    166
    +                    }
    
    165 167
                         component.setSelectedItem((SpeciesListReference) value);
    
    166 168
                     }
    
    167 169
     
    
    168 170
                     @Override
    
    169 171
                     public Object getCellEditorValue() {
    
    170 172
                         SpeciesListReference selectedItem = component.getModel().getSelectedItem();
    
    171
    -                    return selectedItem.getId();
    
    173
    +                    return selectedItem == null ? null : selectedItem.getId();
    
    172 174
                     }
    
    173 175
     
    
    174 176
                     @Override
    
    ... ... @@ -182,6 +184,10 @@ public class ClientConfigUI extends JXTitledPanel implements WithClientUIContext
    182 184
     
    
    183 185
                     @Override
    
    184 186
                     public boolean stopCellEditing() {
    
    187
    +                    if (component.getModel().getSelectedItem()==null) {
    
    188
    +                         super.cancelCellEditing();
    
    189
    +                        return true;
    
    190
    +                    }
    
    185 191
                         if (component.getConfig().isEditable()) {
    
    186 192
                             // Commit edited value.
    
    187 193
                             component.getCombobox().actionPerformed(new ActionEvent(SpeciesListTableCellEditor.this, 0, ""));