Project

General

Profile

« Previous | Next » 

Revision c198e965

Added by Katja Luther almost 4 years ago

fix #9063: fix details view for media specimen

View differences:

eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/media/MediaSpecimenGeneralDetailElement.java
8 8
 */
9 9
package eu.etaxonomy.taxeditor.ui.section.occurrence.media;
10 10

  
11
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
11 12
import eu.etaxonomy.cdm.api.service.IVocabularyService;
12 13
import eu.etaxonomy.cdm.model.agent.AgentBase;
13
import eu.etaxonomy.cdm.model.term.DefinedTerm;
14 14
import eu.etaxonomy.cdm.model.common.IdentifiableSource;
15 15
import eu.etaxonomy.cdm.model.common.Language;
16
import eu.etaxonomy.cdm.model.reference.OriginalSourceType;
17
import eu.etaxonomy.cdm.model.term.TermVocabulary;
18 16
import eu.etaxonomy.cdm.model.common.TimePeriod;
19
import eu.etaxonomy.cdm.model.term.VocabularyEnum;
20 17
import eu.etaxonomy.cdm.model.media.Media;
21 18
import eu.etaxonomy.cdm.model.occurrence.Collection;
22 19
import eu.etaxonomy.cdm.model.occurrence.MediaSpecimen;
20
import eu.etaxonomy.cdm.model.reference.OriginalSourceType;
23 21
import eu.etaxonomy.cdm.model.reference.Reference;
22
import eu.etaxonomy.cdm.model.term.DefinedTerm;
23
import eu.etaxonomy.cdm.model.term.TermVocabulary;
24
import eu.etaxonomy.cdm.model.term.VocabularyEnum;
24 25
import eu.etaxonomy.taxeditor.store.CdmStore;
25 26
import eu.etaxonomy.taxeditor.ui.combo.term.TermComboElement;
26 27
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
......
39 40
 * @date 16.12.2013
40 41
 *
41 42
 */
42
public class MediaSpecimenGeneralDetailElement extends AbstractCdmDetailElement<MediaSpecimen> implements ITogglableMediaElement{
43
public class MediaSpecimenGeneralDetailElement extends AbstractCdmDetailElement<DerivedUnitFacade> implements ITogglableMediaElement{
43 44

  
44 45
    private final TermVocabulary mediaSpecimenVocabulary = CdmStore.getService(IVocabularyService.class).find(VocabularyEnum.MediaSpecimenKindOfUnit.getUuid());
45 46

  
......
63 64
    }
64 65

  
65 66
    @Override
66
    protected void createControls(ICdmFormElement formElement, MediaSpecimen entity, int style) {
67
        Media media = entity.getMediaSpecimen();
67
    protected void createControls(ICdmFormElement formElement, DerivedUnitFacade entity, int style) {
68
        MediaSpecimen specimen = null;
69
        if (entity.innerDerivedUnit() instanceof MediaSpecimen){
70
             specimen = (MediaSpecimen)entity.innerDerivedUnit();
71
        }
72
        Media media = null;
73
        if (specimen != null){
74
            media = specimen.getMediaSpecimen();
75
        }
68 76
        if(media==null){
69 77
            formFactory.createLabel(formElement, "No media attached to this MediaSpecimen!");
70 78
        }
71 79
        else{
72
            comboKindOfUnit = formFactory.createDefinedTermComboElement(mediaSpecimenVocabulary, formElement, "Kind of Media", entity.getKindOfUnit(), style);
80
            comboKindOfUnit = formFactory.createDefinedTermComboElement(mediaSpecimenVocabulary, formElement, "Kind of Media", specimen.getKindOfUnit(), style);
73 81
            textTitleLanguageString = formFactory.createLanguageStringWithLabelElement(formElement, "Motif", media.getTitle(), style);
74 82
            selectionArtist = formFactory.createSelectionElement(AgentBase.class, //getConversationHolder(),
75 83
                    formElement, "Prepared by", media.getArtist(), EntitySelectionElement.ALL, style);
76
            TimePeriod mediaCreated = entity.getMediaSpecimen().getMediaCreated();
84
            TimePeriod mediaCreated = specimen.getMediaSpecimen().getMediaCreated();
77 85

  
78 86
            date = formFactory.createTimePeriodElement(formElement, "Preparation Date", mediaCreated, style);
79 87
            textMethodLanguageString = formFactory.createLanguageStringWithLabelElement(formElement, "Method", media.getDescription(Language.getDefaultLanguage()), style);
......
100 108

  
101 109
    @Override
102 110
    public void handleEvent(Object eventSource) {
103
        Media media = getEntity().getMediaSpecimen();
111
        Media media = ((MediaSpecimen)getEntity().innerDerivedUnit()).getMediaSpecimen();
104 112
        if(media==null){
105 113
            media = Media.NewInstance();
106
            getEntity().setMediaSpecimen(media);
114
            ((MediaSpecimen)getEntity().innerDerivedUnit()).setMediaSpecimen(media);
107 115
        }
108 116
        if(eventSource==comboKindOfUnit){
109
            getEntity().setKindOfUnit(comboKindOfUnit.getSelection());
117
            ((MediaSpecimen)getEntity().innerDerivedUnit()).setKindOfUnit(comboKindOfUnit.getSelection());
110 118
        }
111 119
        else if(eventSource==textTitleLanguageString){
112 120
            media.putTitle(textTitleLanguageString.getLanguageString());
......
143 151
            }
144 152
        }
145 153
        else if(eventSource==checkIsPublish){
146
            getEntity().setPublish(checkIsPublish.getSelection());
154
            ((MediaSpecimen)getEntity().innerDerivedUnit()).setPublish(checkIsPublish.getSelection());
147 155
        }
148 156
    }
149 157

  

Also available in: Unified diff