fix #6176: check if entity is new
authorKatja Luther <k.luther@bgbm.org>
Thu, 3 Nov 2016 08:37:56 +0000 (09:37 +0100)
committerKatja Luther <k.luther@bgbm.org>
Thu, 3 Nov 2016 08:37:56 +0000 (09:37 +0100)
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/reference/ReferenceDetailElement.java

index b8599a88d7092f40f8d1260fa19c1f40a12415f4..b7c88adb0ac634812b993d0fb17d1197ebfe4d9a 100644 (file)
@@ -15,12 +15,8 @@ import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 
-import org.eclipse.jface.wizard.WizardPage;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.FontData;
 
 import eu.etaxonomy.cdm.common.CdmUtils;
 import eu.etaxonomy.cdm.model.agent.AgentBase;
@@ -31,7 +27,6 @@ import eu.etaxonomy.cdm.model.reference.ReferenceFactory;
 import eu.etaxonomy.cdm.model.reference.ReferenceType;
 import eu.etaxonomy.taxeditor.store.CdmStore;
 import eu.etaxonomy.taxeditor.ui.combo.EnumComboElement;
-import eu.etaxonomy.taxeditor.ui.element.AbstractCdmEntityWizardPage;
 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
 import eu.etaxonomy.taxeditor.ui.element.CdmPropertyChangeEvent;
 import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
@@ -59,7 +54,7 @@ public class ReferenceDetailElement extends AbstractIdentifiableEntityDetailElem
                implements IErrorIntolerableElement, IExceptionHandler {
 
        private LabelElement warnForReferencedObjects;
-       
+
     private ToggleableTextElement toggleableAbbrevCache;
 
        private TextWithLabelElement text_edition;
@@ -118,8 +113,8 @@ public class ReferenceDetailElement extends AbstractIdentifiableEntityDetailElem
                ICdmFormElement o = this.getParentElement();
                Class clazz=o.getClass();
                setWarnForReferencingObjects(formElement);
-               
-               
+
+
                toggleable_cache = formFactory.createToggleableTextField(formElement,
                                "Reference Cache", entity.getTitleCache(),
                                entity.isProtectedTitleCache(), style);
@@ -606,29 +601,32 @@ public class ReferenceDetailElement extends AbstractIdentifiableEntityDetailElem
            }
            setIrrelevant(pushedState, except);
        }
-       
+
        public void setWarnForReferencingObjects(ICdmFormElement formElement){
-               Integer referencingObjectsCount = CdmStore.getCommonService().getReferencingObjectsCount(getEntity());
-               if (referencingObjectsCount > 1){
-                       if (warnForReferencedObjects == null){
-                               warnForReferencedObjects = formFactory.createLabel(formElement, CdmUtils.Nz("The reference is referenced by " + referencingObjectsCount+ " objects, if you change it, it is changed for all these objects"));
-                               warnForReferencedObjects.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_RED));
-                               warnForReferencedObjects.setLayout(LayoutConstants.FILL(2, 2));
-                               warnForReferencedObjects.setForeground(Display.getCurrent().getSystemColor(
-                                               SWT.COLOR_RED));
-                               
-                       }else{
-                               warnForReferencedObjects.setText(CdmUtils.Nz("The reference is referenced by " + referencingObjectsCount+ " objects, if you change it, it is changed for all these objects"));
-                       }
-                       warnForReferencedObjects.setVisible(false);
-               }
+           if (getEntity().getId() != 0){
+               Integer referencingObjectsCount = CdmStore.getCommonService().getReferencingObjectsCount(getEntity());
+
+               if (referencingObjectsCount > 1){
+                       if (warnForReferencedObjects == null){
+                               warnForReferencedObjects = formFactory.createLabel(formElement, CdmUtils.Nz("The reference is referenced by " + referencingObjectsCount+ " objects, if you change it, it is changed for all these objects"));
+                               warnForReferencedObjects.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_RED));
+                               warnForReferencedObjects.setLayout(LayoutConstants.FILL(2, 2));
+                               warnForReferencedObjects.setForeground(Display.getCurrent().getSystemColor(
+                                               SWT.COLOR_RED));
+
+                       }else{
+                               warnForReferencedObjects.setText(CdmUtils.Nz("The reference is referenced by " + referencingObjectsCount+ " objects, if you change it, it is changed for all these objects"));
+                       }
+                       warnForReferencedObjects.setVisible(false);
+               }
+           }
        }
-       
+
        public void setWarnForReferencingObjectsVisible(boolean isVisible){
                if (warnForReferencedObjects != null){
                        warnForReferencedObjects.setVisible(isVisible);
                }
        }
 
-       
+
 }