Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
-
4d2d332a
by Tony Chemit at 2024-12-10T13:39:45+01:00
1 changed file:
Changes:
| ... | ... | @@ -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, ""));
|