- simplified code/refactoring
authorPatric Plitzner <p.plitzner@bgbm.org>
Thu, 11 Jul 2013 12:19:03 +0000 (12:19 +0000)
committerPatric Plitzner <p.plitzner@bgbm.org>
Thu, 11 Jul 2013 12:19:03 +0000 (12:19 +0000)
 - fixing warnings

.gitattributes
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/AbstractCdmFormElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/TextWithLabelElement2.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/AbstractCdmDetailElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/name/NonViralNameDetailSection.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/AbstractCdmViewPart.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/detail/DetailsViewer.java

index 0d423008f2713c5e9c52d57a1a6af46964417df6..8e763ae8474a217a757b39568fe91012e09f580c 100644 (file)
@@ -1303,6 +1303,7 @@ eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/Roo
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/SelectionArbitrator.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/TextActionElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/TextWithLabelElement.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/TextWithLabelElement2.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/TimePeriodElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/ToggleableTextElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/UriWithLabelElement.java -text
index c0d3ca65a0ea018e0763d8d7d9556e4325662261..6d71b98a8ec2ebf6df372fe70029f773b650470f 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * 
+ *
  */
 package eu.etaxonomy.taxeditor.ui.element;
 
@@ -16,7 +16,7 @@ import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Control;
 import org.eclipse.ui.forms.widgets.Section;
 
-import eu.etaxonomy.taxeditor.store.StoreUtil;
+import eu.etaxonomy.taxeditor.model.AbstractUtility;
 
 /**
  * <p>Abstract AbstractCdmFormElement class.</p>
@@ -24,22 +24,22 @@ import eu.etaxonomy.taxeditor.store.StoreUtil;
  * @author n.hoffmann
  * @version $Id: $
  */
-public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter, ICdmFormElement {
+public abstract class AbstractCdmFormElement implements ICdmFormElement {
 
        protected CdmFormFactory formFactory;
 
        private List<IPropertyChangeListener> propertyChangeListeners;
 
        private Composite layoutComposite;
-       
-       private Set<Control> controls = new HashSet<Control>();
-       
-       private Set<ICdmFormElement> elements = new HashSet<ICdmFormElement>();
+
+       private final Set<Control> controls = new HashSet<Control>();
+
+       private final Set<ICdmFormElement> elements = new HashSet<ICdmFormElement>();
        private ICdmFormElement parentElement;
 
        private Color persistentBackgroundColor;
-       
-       
+
+
        /**
         * <p>Constructor for AbstractCdmFormElement.</p>
         *
@@ -50,7 +50,7 @@ public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter,
                this.layoutComposite = layoutComposite;
                this.formFactory = formFactory;
        }
-       
+
        /**
         * <p>Constructor for AbstractCdmFormElement.</p>
         *
@@ -62,7 +62,7 @@ public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter,
                this.parentElement = formElement;
 //             addControl(layoutComposite);
        }
-       
+
        /**
         * <p>Getter for the field <code>formFactory</code>.</p>
         *
@@ -71,23 +71,24 @@ public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter,
        public CdmFormFactory getFormFactory() {
                return formFactory;
        }
-       
+
        /**
         * Delegates the focus to <code>this</code> elements main input control
         */
        public void setFocus(){
-               // Override in subclasses where needed 
+               // Override in subclasses where needed
        }
-       
+
        /**
         * Returns all Controls that are managed by this element
         *
         * @return a {@link java.util.Set} object.
         */
-       public Set<Control> getControls(){
+       @Override
+    public Set<Control> getControls(){
                return controls;
        }
-       
+
        /**
         * adds the control to the set of controls that are managed by this element
         *
@@ -96,7 +97,7 @@ public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter,
        protected void addControl(Control child){
                controls.add(child);
        }
-       
+
        /**
         * <p>removeControl</p>
         *
@@ -105,30 +106,33 @@ public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter,
        protected void removeControl(Control child){
                controls.remove(child);
        }
-       
+
        /**
         * <p>Getter for the field <code>elements</code>.</p>
         *
         * @return a {@link java.util.Set} object.
         */
-       public Set<ICdmFormElement> getElements(){
+       @Override
+    public Set<ICdmFormElement> getElements(){
                return elements;
        }
-       
+
        /**
         * <p>Getter for the field <code>parentElement</code>.</p>
         *
         * @return a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement} object.
         */
-       public ICdmFormElement getParentElement(){
+       @Override
+    public ICdmFormElement getParentElement(){
                return parentElement;
        }
-       
+
        /** {@inheritDoc} */
-       public void addElement(ICdmFormElement element){
+       @Override
+    public void addElement(ICdmFormElement element){
                elements.add(element);
        }
-       
+
        /**
         * <p>removeElement</p>
         *
@@ -137,15 +141,16 @@ public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter,
        protected void removeElement(ICdmFormElement element){
                elements.remove(element);
        }
-       
+
        /**
         * <p>removeElements</p>
         */
-       public void removeElements(){
+       @Override
+    public void removeElements(){
                for(ICdmFormElement childElement : getElements()){
                        // recursion
                        childElement.removeElements();
-                       
+
                        // unregister selection arbitrator
                        if(childElement instanceof ISelectableElement){
                                SelectionArbitrator selectionArbitrator = ((ISelectableElement) childElement).getSelectionArbitrator();
@@ -153,19 +158,17 @@ public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter,
                                        formFactory.destroySelectionArbitrator(selectionArbitrator);
                                }
                        }
-                       
+
                        // unregister from property changes
-                       if(childElement instanceof IPropertyChangeListener){
-                               formFactory.removePropertyChangeListener((IPropertyChangeListener) childElement); 
-                       }
-                       
+                       formFactory.removePropertyChangeListener(childElement);
+
                        // dispose of the controls
                        removeControls(childElement);
                }
                removeControls(this);
                elements.clear();
        }
-       
+
        private void removeControls(ICdmFormElement element){
                if(element instanceof Section){
                        ((Section) element).dispose();
@@ -183,16 +186,17 @@ public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter,
                        }
                }
        }
-       
+
        /**
         * <p>Getter for the field <code>layoutComposite</code>.</p>
         *
         * @return a {@link org.eclipse.swt.widgets.Composite} object.
         */
-       public Composite getLayoutComposite() {
+       @Override
+    public Composite getLayoutComposite() {
                return layoutComposite;
        }
-       
+
        /**
         * <p>Setter for the field <code>layoutComposite</code>.</p>
         *
@@ -201,7 +205,7 @@ public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter,
        public void setLayoutComposite(Composite layoutComposite){
                this.layoutComposite = layoutComposite;
        }
-       
+
        /* (non-Javadoc)
         * @see eu.etaxonomy.taxeditor.forms.ICdmFormComposite#getPropertyChangeListeners()
         */
@@ -210,18 +214,20 @@ public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter,
         *
         * @return a {@link java.util.Set} object.
         */
-       public List<IPropertyChangeListener> getPropertyChangeListeners() {
+       @Override
+    public List<IPropertyChangeListener> getPropertyChangeListeners() {
                return propertyChangeListeners;
        }
-       
+
        /* (non-Javadoc)
         * @see eu.etaxonomy.taxeditor.forms.ICdmFormComposite#setPropertyChangeListeners(org.eclipse.core.runtime.ListenerList)
         */
        /** {@inheritDoc} */
-       public void setPropertyChangeListeners(List<IPropertyChangeListener> propertyChangeListeners){
+       @Override
+    public void setPropertyChangeListeners(List<IPropertyChangeListener> propertyChangeListeners){
                this.propertyChangeListeners = propertyChangeListeners;
        }
-       
+
        /* (non-Javadoc)
         * @see eu.etaxonomy.taxeditor.forms.IPropertyChangeEmitter#firePropertyChangeEvent()
         */
@@ -229,7 +235,8 @@ public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter,
         * @see eu.etaxonomy.taxeditor.forms.ICdmFormComposite#firePropertyChangeEvent(org.eclipse.jface.util.PropertyChangeEvent)
         */
        /** {@inheritDoc} */
-       public void firePropertyChangeEvent(CdmPropertyChangeEvent event) {
+       @Override
+    public void firePropertyChangeEvent(CdmPropertyChangeEvent event) {
                Assert.isNotNull(propertyChangeListeners, "Property change listeners are not present");
 
                try{
@@ -237,34 +244,34 @@ public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter,
                                ((IPropertyChangeListener)listener).propertyChange(event);
                        }
                }catch(ConcurrentModificationException e){
-                       // There are two cases that produce a CME. 
+                       // There are two cases that produce a CME.
                        // Described here: http://dev.e-taxonomy.eu/trac/ticket/2363#comment:2
                        // and here: http://dev.e-taxonomy.eu/trac/ticket/2438
                        // Ignoring the CME because nothing bad is happening
-                       StoreUtil.warn(getClass(), "ConcurrentModificationException. Can be ignored.");
+                       AbstractUtility.warn(getClass(), "ConcurrentModificationException. Can be ignored.");
                }
        }
-       
+
        /**
         * Fires a {@link CdmPropertyChangeEvent} with the given object as source.
-        *  
+        *
         * @param object the object on which the property changed
         */
        public void firePropertyChangeEvent(Object object){
                firePropertyChangeEvent(object, null);
        }
-       
+
        /**
         * Fires a {@link CdmPropertyChangeEvent} with the given object as source also containing the
         * originating event
-        * 
+        *
         * @param object the object on which the property changed
         * @param originatingEvent the originating event
         */
        public void firePropertyChangeEvent(Object object, PropertyChangeEvent originatingEvent){
                firePropertyChangeEvent(new CdmPropertyChangeEvent(object, originatingEvent));
        }
-       
+
 
        /**
         * {@inheritDoc}
@@ -275,12 +282,14 @@ public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter,
         * Implementations should also check for null PropertyChangeEvents and return immediately in that case.
         * @see eu.etaxonomy.taxeditor.ui.element.ICdmFormElement#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
         */
-       public void propertyChange(PropertyChangeEvent event) {
+       @Override
+    public void propertyChange(PropertyChangeEvent event) {
                // implement in subclasses
        }
-       
+
        /** {@inheritDoc} */
-       public boolean containsFormElement(ICdmFormElement formElement){
+       @Override
+    public boolean containsFormElement(ICdmFormElement formElement){
                if(formElement == this){
                        return true;
                }else{
@@ -293,7 +302,7 @@ public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter,
                        return false;
                }
        }
-       
+
        /*
         * (non-Javadoc)
         * @see eu.etaxonomy.taxeditor.forms.ICdmFormElement#refresh()
@@ -301,10 +310,11 @@ public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter,
        /**
         * <p>refresh</p>
         */
-       public void refresh() {
-               // empty default implementation 
+       @Override
+    public void refresh() {
+               // empty default implementation
        }
-       
+
 
        /** {@inheritDoc} */
        @Override
@@ -313,19 +323,19 @@ public abstract class AbstractCdmFormElement implements IPropertyChangeEmitter,
                        element.setBackground(color);
                }
        }
-       
+
        @Override
        public void setPersistentBackground(Color color) {
                persistentBackgroundColor = color;
                setBackground(color);
        }
-       
+
        @Override
        public Color getPersistentBackground() {
                return persistentBackgroundColor;
        }
-       
+
        public Color getColor(String colorId){
-               return StoreUtil.getColor(colorId);
+               return AbstractUtility.getColor(colorId);
        }
 }
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/TextWithLabelElement2.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/TextWithLabelElement2.java
new file mode 100644 (file)
index 0000000..8837628
--- /dev/null
@@ -0,0 +1,35 @@
+// $Id$
+/**
+* Copyright (C) 2013 EDIT
+* European Distributed Institute of Taxonomy
+* http://www.e-taxonomy.eu
+*
+* The contents of this file are subject to the Mozilla Public License Version 1.1
+* See LICENSE.TXT at the top of this package for the full license terms.
+*/
+package eu.etaxonomy.taxeditor.ui.element;
+
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * @author pplitzner
+ * @date 11.06.2013
+ *
+ */
+public class TextWithLabelElement2 extends Composite {
+
+    /**
+     * Create the composite.
+     * @param parent
+     * @param style
+     */
+    public TextWithLabelElement2(Composite parent, int style) {
+        super(parent, style);
+
+    }
+
+    @Override
+    protected void checkSubclass() {
+        // Disable the check that prevents subclassing of SWT components
+    }
+}
index 62cae18b82bdc055a87e4647b3c7b3355b45f4e4..4704d2b24f15e6283effeb2466a3e75cee169197 100644 (file)
@@ -21,7 +21,7 @@ import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
 import eu.etaxonomy.cdm.model.name.TaxonNameBase;
 import eu.etaxonomy.cdm.model.taxon.TaxonBase;
 import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
-import eu.etaxonomy.taxeditor.store.StoreUtil;
+import eu.etaxonomy.taxeditor.model.AbstractUtility;
 import eu.etaxonomy.taxeditor.ui.element.AbstractCdmFormElement;
 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
 import eu.etaxonomy.taxeditor.ui.element.CdmPropertyChangeEvent;
@@ -265,7 +265,7 @@ public abstract class AbstractCdmDetailElement<T> extends AbstractCdmFormElement
         */
        public void handleException(CdmPropertyChangeEvent event) {
                // override this in subclasses if you want to deal with the error
-               StoreUtil.error(event.getSource().getClass(), event.getException());
+               AbstractUtility.error(event.getSource().getClass(), event.getException());
        }
 
        /**
index 6657d7a744bcefa27ca3337d414b6239d25525d7..d76f59a91f74368ce3dd6eb9dc3d36ce0dafbefb 100644 (file)
@@ -1,9 +1,9 @@
 // $Id$
 /**
 * Copyright (C) 2007 EDIT
-* European Distributed Institute of Taxonomy 
+* European Distributed Institute of Taxonomy
 * http://www.e-taxonomy.eu
-* 
+*
 * The contents of this file are subject to the Mozilla Public License Version 1.1
 * See LICENSE.TXT at the top of this package for the full license terms.
 */
@@ -11,6 +11,7 @@
 package eu.etaxonomy.taxeditor.ui.section.name;
 
 import org.eclipse.jface.action.Action;
+import org.eclipse.jface.action.IAction;
 import org.eclipse.jface.action.ToolBarManager;
 import org.eclipse.jface.viewers.ISelectionProvider;
 import org.eclipse.swt.SWT;
@@ -20,11 +21,11 @@ import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
 import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
 import eu.etaxonomy.cdm.model.name.NonViralName;
 import eu.etaxonomy.cdm.model.taxon.TaxonBase;
-import eu.etaxonomy.taxeditor.store.StoreUtil;
+import eu.etaxonomy.taxeditor.model.AbstractUtility;
 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
+import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory.DetailType;
 import eu.etaxonomy.taxeditor.ui.element.CdmPropertyChangeEvent;
 import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
-import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory.DetailType;
 import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailSection;
 import eu.etaxonomy.taxeditor.ui.section.ITaxonBaseDetailSection;
 
@@ -53,20 +54,21 @@ public class NonViralNameDetailSection extends AbstractCdmDetailSection<NonViral
                        ICdmFormElement parentElement, ISelectionProvider selectionProvider, int style) {
                super(formFactory, conversation, parentElement, selectionProvider, style);
        }
-       
+
        /* (non-Javadoc)
         * @see eu.etaxonomy.taxeditor.section.AbstractCdmDetailSection#createToolbar()
         */
        @Override
        protected Control createToolbar() {
                ToolBarManager toolBarManager = new ToolBarManager(SWT.FLAT);
-               
+
                if(getEntity() != null && checkForMultipleNameUsages(getEntity())){
-               
-                       Action cloneAction = new Action("Clone", Action.AS_PUSH_BUTTON){
-                               public void run() {
-                                       boolean confirm = StoreUtil.confirmDialog("Confirm cloning", "Do you really want to clone the name?");
-                                       
+
+                       Action cloneAction = new Action("Clone", IAction.AS_PUSH_BUTTON){
+                               @Override
+                public void run() {
+                                       boolean confirm = AbstractUtility.confirmDialog("Confirm cloning", "Do you really want to clone the name?");
+
                                        if(confirm){
                                                NonViralName clonedName;
                                                clonedName = (NonViralName) getEntity().clone();
@@ -76,27 +78,27 @@ public class NonViralNameDetailSection extends AbstractCdmDetailSection<NonViral
 //                                             EditorUtil.getActiveMultiPageTaxonEditor().r
                                                firePropertyChangeEvent(new CdmPropertyChangeEvent(NonViralNameDetailSection.this, null));
                                        }
-                                       
+
                                };
                        };
-                       
+
                        cloneAction.setToolTipText("Clone the name if you do not want to edit the shared instance");
-                       
+
                        toolBarManager.add(cloneAction);
-               
+
                }
                return toolBarManager.createControl(this);
        }
-       
+
 
        /**
-        * @param nonViralName 
-        * 
+        * @param nonViralName
+        *
         */
        private boolean checkForMultipleNameUsages(NonViralName nonViralName) {
                return nonViralName.getTaxonBases().size() != 1;
        }
-       
+
        /* (non-Javadoc)
         * @see eu.etaxonomy.taxeditor.section.AbstractCdmDetailSection#getDetailType()
         */
@@ -119,7 +121,8 @@ public class NonViralNameDetailSection extends AbstractCdmDetailSection<NonViral
         * @see eu.etaxonomy.taxeditor.section.ITaxonDetailSection#setTaxon(eu.etaxonomy.cdm.model.taxon.TaxonBase)
         */
        /** {@inheritDoc} */
-       public void setTaxonBase(TaxonBase taxon) {
+       @Override
+    public void setTaxonBase(TaxonBase taxon) {
                taxonBase = taxon;
                NonViralName name = (NonViralName) HibernateProxyHelper.deproxy(taxon.getName());
                setEntity(name);
index 88d8449c484889e012acab9d0e91fad63b626ec1..4d20a88ed1877135cf08c240b24408995cabaec7 100644 (file)
@@ -60,7 +60,8 @@ public abstract class AbstractCdmViewPart extends ViewPart implements ISelection
                selectionService.addSelectionListener(this);
 
                pageBook = new PageBook(parent, SWT.NULL);
-               createViewerComposite(pageBook);
+               //create viewerComposite
+               viewerComposite = new SashForm(pageBook, SWT.HORIZONTAL);
                createViewer(viewerComposite);
 
                // Page 2: Nothing selected
@@ -165,6 +166,7 @@ public abstract class AbstractCdmViewPart extends ViewPart implements ISelection
        @Override
     public ConversationHolder getConversationHolder() {
                if(part != null) {
+                   //FIXME what if part is not an IConversationEnabled? ClassCastException?
             return ((IConversationEnabled) part).getConversationHolder();
         }
 
index 521f6ddb28c055db8ae255c048efbd5a73ea2626..bc5e6b17083355736c7a25496aaa83c571ebdf2e 100644 (file)
@@ -230,7 +230,7 @@ public class DetailsViewer extends AbstractCdmDataViewer {
             createMediaElementSection(rootElement);
 
         } else if (input instanceof DerivedUnitFacade) {
-            createDerivedUnitBaseElementSection(rootElement);
+            createFOSection(rootElement);
 
         } else if (input instanceof FeatureNodeContainer) {
             createFeatureDistributionSection(rootElement);