Project

General

Profile

« Previous | Next » 

Revision 9dfd3706

Added by Patrick Plitzner about 7 years ago

fix #3603 Avoid creation of dummy DefinedTerm

View differences:

eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/CdmFormFactory.java
2718 2718
            element = new StatisticalMeasureCollectionElement(this, parentElement, (StatisticalMeasure) entity, removeListener, backgroundColor, style);
2719 2719
        }
2720 2720

  
2721
        //check for parent section when entity is null
2722
        //this happens when AbstractUnboundEntityCollectionSection is used
2723
        if(entity==null){
2724
            if(parentElement instanceof ScopeSection || parentElement instanceof ScopeRestrictionSection){
2725
                element = new ScopeElement(this,
2726
                        parentElement,
2727
                        (DefinedTerm) entity,
2728
                        removeListener,
2729
                        style);
2730
            }
2731
            else if(parentElement instanceof ModifierSection){
2732
                element = new ModifierElement(this,
2733
                        parentElement,
2734
                        (DefinedTerm) entity,
2735
                        removeListener,
2736
                        style);
2737
            }
2738
        }
2739

  
2721 2740

  
2722 2741
        if (element == null) {
2723 2742
            MessagingUtils.messageDialog("No element for entity", this,
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/ModifierElement.java
74 74
		    }
75 75
		    combo_modifier.setTerms(modifierTerms);
76 76
		}
77
        if(entity.getId()>0){
77
        if(entity!=null && entity.getId()>0){
78 78
            combo_modifier.setSelection(entity);
79 79
            combo_modifier.removeEmptyElement();
80 80
        }
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/ModifierSection.java
13 13

  
14 14
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
15 15
import eu.etaxonomy.cdm.model.common.DefinedTerm;
16
import eu.etaxonomy.cdm.model.common.TermType;
17 16
import eu.etaxonomy.cdm.model.description.IModifiable;
18 17
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
19 18
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
......
45 44
	/** {@inheritDoc} */
46 45
	@Override
47 46
	public DefinedTerm createNewElement() {
48
		return DefinedTerm.NewInstance(TermType.Modifier,"","Untitled","");
47
		return null;
49 48
	}
50 49

  
51 50
	/** {@inheritDoc} */
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/ScopeElement.java
14 14
import eu.etaxonomy.cdm.model.common.DefinedTerm;
15 15
import eu.etaxonomy.cdm.model.common.TermType;
16 16
import eu.etaxonomy.cdm.model.description.PolytomousKey;
17
import eu.etaxonomy.cdm.model.description.TaxonDescription;
17 18
import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;
18 19
import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
19 20
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
......
51 52
	@Override
52 53
	public void setEntity(DefinedTerm entity) {
53 54
		this.entity = entity;
54
		if(entity.getId()!=0){
55
		if(entity!=null && entity.getId()!=0){
55 56
		    combo_scope.setSelection(entity);
56 57
		    combo_scope.removeEmptyElement();
57 58
		}
......
74 75
	            key.addScopeRestriction(scopeTerm);
75 76
                entity = scopeTerm;
76 77
	        }
78
	        else if(getParentElement() instanceof ScopeSection){
79
	            TaxonDescription description = ((ScopeSection)getParentElement()).getEntity();
80
	            description.removeScope(entity);
81
	            description.addScope(scopeTerm);
82
	            entity = scopeTerm;
83

  
84
	        }
77 85
	    }
78 86
	}
79 87

  
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/ScopeSection.java
13 13

  
14 14
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
15 15
import eu.etaxonomy.cdm.model.common.DefinedTerm;
16
import eu.etaxonomy.cdm.model.common.TermType;
17 16
import eu.etaxonomy.cdm.model.description.TaxonDescription;
18 17
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
19 18
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
......
49 48
	/** {@inheritDoc} */
50 49
	@Override
51 50
	public DefinedTerm createNewElement() {
52
		return DefinedTerm.NewInstance(TermType.Scope,"","","");
51
		return null;
53 52
	}
54 53

  
55 54
	/** {@inheritDoc} */
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/key/ScopeRestrictionSection.java
1 1
/**
2
 * 
2
 *
3 3
 */
4 4
package eu.etaxonomy.taxeditor.ui.section.key;
5 5

  
......
7 7

  
8 8
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
9 9
import eu.etaxonomy.cdm.model.common.DefinedTerm;
10
import eu.etaxonomy.cdm.model.common.TermType;
11 10
import eu.etaxonomy.cdm.model.description.PolytomousKey;
12 11
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
13 12
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
......
31 30
	}
32 31

  
33 32
	@Override
34
	public DefinedTerm createNewElement() {		
35
		return DefinedTerm.NewInstance(TermType.Scope,"","Untitled","");
36
			
33
	public DefinedTerm createNewElement() {
34
		return null;
35

  
37 36
	}
38 37

  
39 38
	@Override

Also available in: Unified diff