local preferences database specific
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / section / AbstractCdmDetailElement.java
index 436c9d8450996928f97d691235f084c4f26c39d7..fd547c971c3fa8d95a80dc1de8d6368277195a2a 100644 (file)
@@ -47,7 +47,7 @@ import eu.etaxonomy.taxeditor.ui.element.LayoutConstants;
  * @author n.hoffmann
  * @created Feb 26, 2010
  */
  * @author n.hoffmann
  * @created Feb 26, 2010
  */
-public abstract class AbstractCdmDetailElement<T> extends AbstractCdmFormElement implements ICdmDetailElement<T>, Observer, IEnableableFormElement{
+public abstract class AbstractCdmDetailElement<T> extends AbstractCdmFormElement implements ICdmDetailElement<T>, Observer{
 
        private T entity;
 
 
        private T entity;
 
@@ -104,9 +104,8 @@ public abstract class AbstractCdmDetailElement<T> extends AbstractCdmFormElement
         */
        protected void updateContent() {
                removeElements();
         */
        protected void updateContent() {
                removeElements();
-               createControls(this, entity, SWT.WRAP);
-               StoreUtil.reflowParentScrolledForm(getLayoutComposite(), true);
-
+               createControls(this, entity, SWT.NONE);
+//             StoreUtil.reflowParentScrolledForm(getLayoutComposite(), true);
                updateControlStates();
        }
 
                updateControlStates();
        }
 
@@ -215,7 +214,7 @@ public abstract class AbstractCdmDetailElement<T> extends AbstractCdmFormElement
                        ICdmFormElement eventElement = (ICdmFormElement) eventSource;
                        ICdmFormElement eventElementContainer = eventElement
                                        .getParentElement();
                        ICdmFormElement eventElement = (ICdmFormElement) eventSource;
                        ICdmFormElement eventElementContainer = eventElement
                                        .getParentElement();
-
+                       ICdmFormElement parent = this.getParentElement();
                        if (eventElementContainer == this) {
                                if (event instanceof CdmPropertyChangeEvent) {
                                        if (((CdmPropertyChangeEvent) event).hasException()) {
                        if (eventElementContainer == this) {
                                if (event instanceof CdmPropertyChangeEvent) {
                                        if (((CdmPropertyChangeEvent) event).hasException()) {
@@ -311,13 +310,13 @@ public abstract class AbstractCdmDetailElement<T> extends AbstractCdmFormElement
                this.warnForReferencedObjects = warnForReferencedObjects;
        }
 
                this.warnForReferencedObjects = warnForReferencedObjects;
        }
 
-       public void setWarnForReferencingObjects(ICdmFormElement formElement){
+       public void setWarnForReferencingObjects(ICdmFormElement formElement, int defaultReferencingObjects){
            if (getEntity() instanceof CdmBase){
                CdmBase cdmBase = (CdmBase) getEntity();
                if (cdmBase.getId() != 0){
            if (getEntity() instanceof CdmBase){
                CdmBase cdmBase = (CdmBase) getEntity();
                if (cdmBase.getId() != 0){
-                       Integer referencingObjectsCount = CdmStore.getCommonService().getReferencingObjectsCount(cdmBase);
+                       long referencingObjectsCount = CdmStore.getCommonService().getReferencingObjectsCount(cdmBase);
 
 
-                       if (referencingObjectsCount > 1){
+                       if (referencingObjectsCount > defaultReferencingObjects){
                                setWarnForReferencedObjects(formFactory.createLabel(formElement, CdmUtils.Nz("The "+ cdmBase.getUserFriendlyTypeName()+" is referenced by " + referencingObjectsCount+ " objects, if you change it, it is changed for all these objects")));
                                getWarnForReferencedObjects().setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_RED));
                                getWarnForReferencedObjects().setLayout(LayoutConstants.FILL(2, 3));
                                setWarnForReferencedObjects(formFactory.createLabel(formElement, CdmUtils.Nz("The "+ cdmBase.getUserFriendlyTypeName()+" is referenced by " + referencingObjectsCount+ " objects, if you change it, it is changed for all these objects")));
                                getWarnForReferencedObjects().setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_RED));
                                getWarnForReferencedObjects().setLayout(LayoutConstants.FILL(2, 3));
@@ -328,6 +327,10 @@ public abstract class AbstractCdmDetailElement<T> extends AbstractCdmFormElement
            }
        }
 
            }
        }
 
+       public void setWarnForReferencingObjects(ICdmFormElement formElement){
+           setWarnForReferencingObjects(formElement, 1);
+       }
+
        public void setWarnForReferencingObjectsVisible(boolean isVisible){
                if (getWarnForReferencedObjects() != null){
                        getWarnForReferencedObjects().setVisible(isVisible);
        public void setWarnForReferencingObjectsVisible(boolean isVisible){
                if (getWarnForReferencedObjects() != null){
                        getWarnForReferencedObjects().setVisible(isVisible);