Project

General

Profile

« Previous | Next » 

Revision 6533a479

Added by Andreas Kohlbecker over 6 years ago

attempt to fix the enabled state in SpecimenTypeDesignationDTORow - no success

View differences:

src/main/java/eu/etaxonomy/cdm/vaadin/view/name/SpecimenTypeDesignationDTORow.java
13 13
import com.vaadin.ui.ListSelect;
14 14
import com.vaadin.ui.TextField;
15 15

  
16
import eu.etaxonomy.cdm.model.common.DefinedTerm;
16 17
import eu.etaxonomy.cdm.model.reference.Reference;
18
import eu.etaxonomy.cdm.vaadin.model.registration.KindOfUnitTerms;
17 19
import eu.etaxonomy.vaadin.component.ToOneRelatedEntityCombobox;
18 20

  
19 21
/**
......
30 32
     *
31 33
     * The fieldname must match the properties of the SpecimenTypeDesignationDTO
32 34
     */
33
    ListSelect kindOfUnit = new ListSelect(); // "Kind of unit");
35
    ListSelect kindOfUnit = new ListSelect();
34 36
    ListSelect typeStatus = new ListSelect();
35 37
    ToOneRelatedEntityCombobox<eu.etaxonomy.cdm.model.occurrence.Collection> collection =
36 38
            new ToOneRelatedEntityCombobox<eu.etaxonomy.cdm.model.occurrence.Collection>(null, eu.etaxonomy.cdm.model.occurrence.Collection.class);
......
50 52
        mediaUri.setWidth(150, Unit.PIXELS);
51 53
        mediaSpecimenReference.setWidth(200, Unit.PIXELS);
52 54
        mediaSpecimenReferenceDetail.setWidth(200, Unit.PIXELS);
55

  
56
        kindOfUnit.addValueChangeListener(e ->
57
                updateRowItemEnablement()
58
        );
59
        mediaSpecimenReferenceDetail.setReadOnly(true);
60

  
53 61
    }
54 62

  
55 63
    /**
......
63 71
                mediaSpecimenReferenceDetail, mediaSpecimenReferenceDetail
64 72
                };
65 73
    }
74

  
75
    public void updateRowItemEnablement() {
76

  
77
        DefinedTerm kindOfUnitTerm = (DefinedTerm)kindOfUnit.getValue();
78

  
79
        boolean publishedImageType = kindOfUnitTerm != null && kindOfUnitTerm.equals(KindOfUnitTerms.PUBLISHED_IMAGE());
80
        boolean unPublishedImageType = kindOfUnitTerm != null && kindOfUnitTerm.equals(KindOfUnitTerms.UNPUBLISHED_IMAGE());
81

  
82
        mediaSpecimenReference.setEnabled(publishedImageType);
83
        mediaSpecimenReferenceDetail.setEnabled(publishedImageType);
84
        mediaUri.setEnabled(unPublishedImageType);
85

  
86
    }
66 87
}
src/main/java/eu/etaxonomy/cdm/vaadin/view/name/SpecimenTypeDesignationWorkingsetEditorPresenter.java
16 16
import eu.etaxonomy.cdm.api.service.IRegistrationService;
17 17
import eu.etaxonomy.cdm.cache.CdmEntityCache;
18 18
import eu.etaxonomy.cdm.cache.EntityCache;
19
import eu.etaxonomy.cdm.model.common.DefinedTerm;
20 19
import eu.etaxonomy.cdm.model.location.Country;
21 20
import eu.etaxonomy.cdm.model.name.Registration;
22 21
import eu.etaxonomy.cdm.model.occurrence.Collection;
......
28 27
import eu.etaxonomy.cdm.vaadin.component.CdmBeanItemContainerFactory;
29 28
import eu.etaxonomy.cdm.vaadin.event.ToOneRelatedEntityButtonUpdater;
30 29
import eu.etaxonomy.cdm.vaadin.event.ToOneRelatedEntityReloader;
31
import eu.etaxonomy.cdm.vaadin.model.registration.KindOfUnitTerms;
32 30
import eu.etaxonomy.cdm.vaadin.model.registration.RegistrationTermLists;
33 31
import eu.etaxonomy.cdm.vaadin.model.registration.SpecimenTypeDesignationWorkingSetDTO;
34 32
import eu.etaxonomy.cdm.vaadin.security.UserHelper;
......
143 141
                        );
144 142
                row.kindOfUnit.setNullSelectionAllowed(false);
145 143

  
146
                row.kindOfUnit.addValueChangeListener(e -> {
147
                    SpecimenTypeDesignationDTORow currentRow = row;
148
                    updateRowItemEnablement(currentRow);
149
                });
150

  
151 144
                row.typeStatus.setContainerDataSource(selectFactory.buildTermItemContainer(
152 145
                        RegistrationTermLists.SPECIMEN_TYPE_DESIGNATION_STATUS_UUIDS())
153 146
                        );
......
174 167

  
175 168
                getView().applyDefaultComponentStyle(row.components());
176 169

  
177
                updateRowItemEnablement(row);
178

  
179 170
                return row;
180 171
            }
181 172

  
182
            private void updateRowItemEnablement(SpecimenTypeDesignationDTORow row) {
183

  
184
                DefinedTerm kindOfUnit = (DefinedTerm)row.kindOfUnit.getValue();
185

  
186
                boolean publishedImageType = kindOfUnit != null && kindOfUnit.equals(KindOfUnitTerms.PUBLISHED_IMAGE());
187
                boolean unPublishedImageType = kindOfUnit != null && kindOfUnit.equals(KindOfUnitTerms.UNPUBLISHED_IMAGE());
188

  
189
                row.mediaSpecimenReference.setEnabled(publishedImageType);
190
                row.mediaSpecimenReferenceDetail.setEnabled(publishedImageType);
191
                row.mediaUri.setEnabled(unPublishedImageType);
192

  
193
            }
194 173
        });
174

  
195 175
    }
196 176

  
197 177

  
......
236 216
        }
237 217
    }
238 218

  
239

  
240 219
}
src/main/java/eu/etaxonomy/cdm/vaadin/view/name/SpecimenTypeDesignationWorkingsetPopupEditor.java
249 249
    }
250 250

  
251 251

  
252

  
253

  
254 252
}

Also available in: Unified diff