Project

General

Profile

« Previous | Next » 

Revision 51270199

Added by Katja Luther about 4 years ago

ref #8047: show taxon name in details

View differences:

eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/checklist/e4/DistributionColumnAccessor.java
166 166
                        editor.part.getCdmEntitySession().load(desc, true);
167 167
                    }
168 168
                    distributions.add(dist);
169

  
169
                    EventUtility.postEvent(WorkbenchEventConstants.REFRESH_DETAILS_DISTRIBUTION, taxonWrapper.getNameCache());
170 170

  
171 171
                }
172
                editor.setActualNameCache(taxonWrapper.getNameCache());
172 173

  
173 174
                editor.descriptionsToSave.add(taxonWrapper);
174 175
            }
176

  
175 177
            EventUtility.postEvent(WorkbenchEventConstants.REFRESH_DETAILS, true);
178

  
176 179
    }
177 180

  
178 181
}
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/checklist/e4/DistributionEditor.java
94 94
import eu.etaxonomy.taxeditor.editor.EditorUtil;
95 95
import eu.etaxonomy.taxeditor.editor.IDistributionEditor;
96 96
import eu.etaxonomy.taxeditor.editor.l10n.Messages;
97
import eu.etaxonomy.taxeditor.event.EventUtility;
98
import eu.etaxonomy.taxeditor.event.WorkbenchEventConstants;
99 97
import eu.etaxonomy.taxeditor.model.AbstractUtility;
100 98
import eu.etaxonomy.taxeditor.model.ImageResources;
101 99
import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
......
144 142
    Button button3;
145 143

  
146 144
    EventList<TaxonDistributionDTO> taxonList;
145
    String actualNameCache = null;
147 146
    Map<UUID,Map<NamedArea,Set<DescriptionElementBase>>> taxonDistributionMap = new HashMap<>();
148 147

  
149 148
    List<TaxonDistributionDTO> descriptionsToSave = new ArrayList<>();
......
203 202
        this.firstDataColumnIndex = firstDataColumnIndex;
204 203
    }
205 204

  
205
    @Override
206
    public String getActualNameCache() {
207
        return actualNameCache;
208
    }
209

  
210
    public void setActualNameCache(String actualNameCache) {
211
        this.actualNameCache = actualNameCache;
212
    }
213

  
206 214
    public LinkedMap<String, String> getPropertyToLabelMap() {
207 215
        return propertyToLabelMap;
208 216
    }
......
498 506
                statusLabelSourceReference.setText(defaultSourceStr);
499 507

  
500 508
                button2.setBackground(EditorUtil.getColor(Resources.COLOR_CONTROL_SELECTED));
501
                EventUtility.postEvent(WorkbenchEventConstants.REFRESH_DETAILS, true);
509
//                EventUtility.postEvent(WorkbenchEventConstants.REFRESH_DETAILS, true);
502 510
                button3.setEnabled(true);
503 511
            }
504 512

  
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/checklist/e4/DistributionEditorPart.java
167 167
            cdmEntitySession.bind();
168 168
        }
169 169
        EditorUtil.checkAndCloseFactsAndMediaParts(partService);
170

  
170 171
    }
171 172

  
172 173
    @Override
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/IDistributionEditor.java
18 18
 */
19 19
public interface IDistributionEditor {
20 20
    public Reference getDefaultSource();
21
    public String getActualNameCache();
21 22

  
22 23
}
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/model/DescriptionHelper.java
25 25
import eu.etaxonomy.cdm.common.CdmUtils;
26 26
import eu.etaxonomy.cdm.model.agent.AgentBase;
27 27
import eu.etaxonomy.cdm.model.common.CdmBase;
28
import eu.etaxonomy.cdm.model.permission.Group;
29 28
import eu.etaxonomy.cdm.model.common.IdentifiableEntity;
30 29
import eu.etaxonomy.cdm.model.common.Language;
31 30
import eu.etaxonomy.cdm.model.common.LanguageString;
......
35 34
import eu.etaxonomy.cdm.model.common.RelationshipBase;
36 35
import eu.etaxonomy.cdm.model.common.RelationshipTermBase;
37 36
import eu.etaxonomy.cdm.model.common.TimePeriod;
38
import eu.etaxonomy.cdm.model.permission.User;
39 37
import eu.etaxonomy.cdm.model.description.CategoricalData;
40 38
import eu.etaxonomy.cdm.model.description.CommonTaxonName;
41 39
import eu.etaxonomy.cdm.model.description.DescriptionBase;
......
65 63
import eu.etaxonomy.cdm.model.occurrence.DeterminationEvent;
66 64
import eu.etaxonomy.cdm.model.occurrence.GatheringEvent;
67 65
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
66
import eu.etaxonomy.cdm.model.permission.Group;
67
import eu.etaxonomy.cdm.model.permission.User;
68 68
import eu.etaxonomy.cdm.model.reference.OriginalSourceBase;
69 69
import eu.etaxonomy.cdm.model.taxon.Classification;
70 70
import eu.etaxonomy.cdm.model.taxon.Taxon;
......
433 433
			typeLabel = "->";
434 434
		}
435 435
		String fromString = "";
436
		for (TaxonName name : from){
437
			CdmUtils.concat(",", fromString, name.getTitleCache());
436
		if(from != null){
437
		    for (TaxonName name : from){
438
		        CdmUtils.concat(",", fromString, name.getTitleCache());
439
		    }
438 440
		}
439 441
		String result = CdmUtils.concat(" ", new String[]{from == null ? null : fromString,
440 442
				typeLabel, to == null? null : to.getTitleCache()});
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/CdmFormFactory.java
3104 3104

  
3105 3105
    public TaxonNodeSelectionElement createTaxonNodeSelectionElement(ConversationHolder conversation,
3106 3106
            ICdmFormElement parentElement, String labelString, TaxonNode selection, int mode, int style) {
3107
        TaxonNodeSelectionElement element = new TaxonNodeSelectionElement(this, //conversation,
3107
        TaxonNodeSelectionElement element = new TaxonNodeSelectionElement(this,
3108 3108
                parentElement,
3109 3109
                labelString, selection, mode, style, null);
3110 3110
        adapt(element);
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/AbstractCdmDetailElement.java
298 298
                except.add(formElement);
299 299
            }
300 300
        }
301
        setEnabled(getEntity() != null && CdmStore.currentAuthentiationHasPermission(StoreUtil.getCdmEntity(getEntity()), requiredCrud), except);
301
        enabled = getEntity() != null && CdmStore.currentAuthentiationHasPermission(StoreUtil.getCdmEntity(getEntity()), requiredCrud);
302
        setEnabled(enabled, except);
302 303
    }
303 304

  
304 305
	public LabelElement getWarnForReferencedObjects() {
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/DescriptionElementSourceSection.java
29 29

  
30 30
    private Reference defaultSource;
31 31

  
32

  
32 33
    /**
33 34
     * <p>
34 35
     * Constructor for DescriptionElementSourceSection.
......
136 137
    public boolean allowAddExisting() {
137 138
        return false;
138 139
    }
140

  
141

  
139 142
}
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/detail/DistributionDetailElement.java
23 23
import eu.etaxonomy.cdm.model.metadata.PreferencePredicate;
24 24
import eu.etaxonomy.cdm.model.metadata.PreferenceSubject;
25 25
import eu.etaxonomy.cdm.model.term.DefinedTermBase;
26
import eu.etaxonomy.taxeditor.editor.IDistributionEditorPart;
27
import eu.etaxonomy.taxeditor.model.AbstractUtility;
26 28
import eu.etaxonomy.taxeditor.preference.CdmPreferenceCache;
27 29
import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
28 30
import eu.etaxonomy.taxeditor.store.CdmStore;
29 31
import eu.etaxonomy.taxeditor.ui.combo.term.TermComboElement;
30 32
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
31 33
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
34
import eu.etaxonomy.taxeditor.ui.element.TextWithLabelElement;
32 35
import eu.etaxonomy.taxeditor.ui.selection.EntitySelectionElement;
33 36

  
34 37
/**
......
45 48
	private TermComboElement<DefinedTermBase> combo_presenceAbsence;
46 49
	private boolean namedAreaEditable = true;
47 50

  
51
	private TextWithLabelElement taxonOfDistribtion;
52

  
48 53

  
49 54
	/**
50 55
	 * <p>Constructor for DistributionDetailElement.</p>
......
65 70
	@Override
66 71
	protected void createControls(ICdmFormElement formElement,
67 72
			Distribution entity, int style) {
73

  
74
	    if (AbstractUtility.getActivePart() instanceof IDistributionEditorPart){
75
	        String nameCache = null;
76
	        nameCache = ((IDistributionEditorPart)AbstractUtility.getActivePart()).getEditor().getActualNameCache();
77
	        taxonOfDistribtion = formFactory.createTextWithLabelElement(formElement, "Taxon", nameCache, style);
78
	        taxonOfDistribtion.setEnabled(false);
79
	    }
68 80
		selection_namedArea = formFactory.createSelectionElement(NamedArea.class, //getConversationHolder(),
69 81
				formElement, "Area",
70 82
				entity.getArea(), EntitySelectionElement.NOTHING, style);
......
73 85
		NamedArea area = entity.getArea();
74 86
		List<DefinedTermBase> inputList = getStatusListForArea(area);
75 87
        combo_presenceAbsence = formFactory.createDefinedTermComboElement(inputList, this, "Distribution Status", entity.getStatus(), style);
76

  
77
        //combo_presenceAbsence = formFactory.createTermComboElement(PresenceAbsenceTerm.class, this, "Distribution Status", entity.getStatus(), style);
78 88
        createTimePeriod(formElement, entity, style);
79 89
        if (entity.getFeature().getRecommendedModifierEnumeration() != null && !entity.getFeature().getRecommendedModifierEnumeration().isEmpty()){
80 90
            createModifier(formElement, entity, style);
......
122 132

  
123 133
	        if (selection_namedArea.getEntity()!= null){
124 134
	            List<DefinedTermBase> inputList = getStatusListForArea(selection_namedArea.getEntity());
135
	            DefinedTermBase selectedTerm = combo_presenceAbsence.getSelection();
125 136
	            if (!inputList.equals(combo_presenceAbsence.getTerms())){
126 137
	                combo_presenceAbsence.setTerms(inputList);
138
	                if (inputList.contains(selectedTerm)){
139
	                    combo_presenceAbsence.setSelection(selectedTerm);
140
	                }
127 141
	            }
128 142
	        }
129 143

  
......
132 146
		}
133 147
	}
134 148

  
149
	public void setName(String nameCache){
150
	    taxonOfDistribtion.setText(nameCache);
151
	}
135 152

  
136 153
}
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/e4/details/DetailsViewerE4.java
77 77
import eu.etaxonomy.taxeditor.store.CdmStore;
78 78
import eu.etaxonomy.taxeditor.store.StoreUtil;
79 79
import eu.etaxonomy.taxeditor.store.UsageTermCollection;
80
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
80 81
import eu.etaxonomy.taxeditor.ui.element.RootElement;
81 82
import eu.etaxonomy.taxeditor.ui.section.agent.PersonDetailSection;
82 83
import eu.etaxonomy.taxeditor.ui.section.agent.TeamDetailSection;
83 84
import eu.etaxonomy.taxeditor.ui.section.agent.TeamOrPersonBaseDetailSection;
84 85
import eu.etaxonomy.taxeditor.ui.section.common.ReferencedEntityDetailSection;
85 86
import eu.etaxonomy.taxeditor.ui.section.description.DescriptionDetailSection;
87
import eu.etaxonomy.taxeditor.ui.section.description.DescriptionElementDetailElement;
86 88
import eu.etaxonomy.taxeditor.ui.section.description.DescriptionElementDetailSection;
87 89
import eu.etaxonomy.taxeditor.ui.section.description.DescriptionElementMediaSection;
88 90
import eu.etaxonomy.taxeditor.ui.section.description.DescriptionElementSourceSection;
......
90 92
import eu.etaxonomy.taxeditor.ui.section.description.MediaDetailsSection;
91 93
import eu.etaxonomy.taxeditor.ui.section.description.NaturalLanguageSection;
92 94
import eu.etaxonomy.taxeditor.ui.section.description.ScopeSection;
95
import eu.etaxonomy.taxeditor.ui.section.description.detail.DistributionDetailElement;
93 96
import eu.etaxonomy.taxeditor.ui.section.feature.CharacterDetailSection;
94 97
import eu.etaxonomy.taxeditor.ui.section.feature.CharacterNodeDetailSection;
95 98
import eu.etaxonomy.taxeditor.ui.section.feature.FeatureDistributionDetailSection;
......
137 140
import eu.etaxonomy.taxeditor.ui.section.vocabulary.DefinedTermDetailSection;
138 141
import eu.etaxonomy.taxeditor.ui.section.vocabulary.TermMediaSection;
139 142
import eu.etaxonomy.taxeditor.ui.section.vocabulary.TermVocabularyDetailSection;
143
import eu.etaxonomy.taxeditor.view.detail.CdmSectionPart;
140 144
import eu.etaxonomy.taxeditor.view.e4.AbstractCdmDataViewerE4;
141 145

  
142 146
/**
......
611 615
        if (activePart != null && activePart instanceof IDistributionEditorPart){
612 616
            Reference defaultSource =((IDistributionEditorPart)activePart).getEditor().getDefaultSource();
613 617
            descriptionElementSourceSection = formFactory.createDescriptionElementSourceSection(getConversationHolder(), parent, defaultSource, StoreUtil.getSectionStyle(DescriptionElementSourceSection.class, getInput().getClass().getCanonicalName()));
618
            for (ICdmFormElement element: descriptionElementDetailSection.getElements()){
619
                if (element instanceof DescriptionElementDetailElement){
620

  
621
//                    ((DistributionDetailElement)element).setName(((IDistributionEditorPart)activePart).getEditor().getActualNameCache());
622
                    break;
623
                }
624
            }
614 625
        }else{
615 626
            descriptionElementSourceSection = formFactory.createDescriptionElementSourceSection(getConversationHolder(), parent, StoreUtil.getSectionStyle(DescriptionElementSourceSection.class, getInput().getClass().getCanonicalName()) );
616 627
        }
......
951 962
    private void updateView(@UIEventTopic(WorkbenchEventConstants.REFRESH_DETAILS)boolean refresh){
952 963
        if(refresh){
953 964
            refresh();
965
        }
966
    }
954 967

  
968
    @Inject
969
    @Optional
970
    private void updateView(@UIEventTopic(WorkbenchEventConstants.REFRESH_DETAILS_DISTRIBUTION)String nameCache){
971
        if(nameCache != null && getInput() instanceof Distribution && this.activePart instanceof IDistributionEditorPart){
972
           if (part instanceof CdmSectionPart && ((CdmSectionPart)part).getSection() instanceof DescriptionElementDetailSection){
973
               for (ICdmFormElement element: ((DescriptionElementDetailSection)((CdmSectionPart)part).getSection()).getElements()){
974
                   if (element instanceof DescriptionElementDetailElement){
975
                       for(ICdmFormElement descriptionElement:((DescriptionElementDetailElement)element).getElements()){
976
                           if (descriptionElement instanceof DistributionDetailElement){
977
                               ((DistributionDetailElement) descriptionElement).setName(nameCache);
978
                           }
979
                       }
980
                   }
981
               }
982
           }
955 983
        }
956 984
    }
957 985

  
986

  
958 987
}

Also available in: Unified diff