Merge branch 'develop' of https://dev.e-taxonomy.eu/git/taxeditor into actualBranch
authorU-BGBM\k.luther <k.luther@BGBM11732.bgbm.fu-berlin.de>
Wed, 26 Aug 2015 10:30:07 +0000 (12:30 +0200)
committerU-BGBM\k.luther <k.luther@BGBM11732.bgbm.fu-berlin.de>
Wed, 26 Aug 2015 10:30:07 +0000 (12:30 +0200)
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/BulkEditor.java
eu.etaxonomy.taxeditor.editor/plugin.xml
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditor.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/SpecimenPropertyTester.java [moved from eu.etaxonomy.taxeditor.molecular/src/main/java/eu/etaxonomy/taxeditor/molecular/handler/SpecimenPropertyTester.java with 87% similarity]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateView.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/MediaViewPart.java
eu.etaxonomy.taxeditor.molecular/plugin.xml
eu.etaxonomy.taxeditor.molecular/src/main/java/eu/etaxonomy/taxeditor/molecular/editor/AlignmentEditor.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/model/IPartContentHasMedia.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/classification/TaxonNodeDetailElement.java
pom.xml

index 720cd61578f40be821155fd125e1bf851df858f4..4c97dbfb51582f3a52d614059d26acf2f4b05d12 100644 (file)
@@ -42,6 +42,7 @@ import eu.etaxonomy.taxeditor.annotatedlineeditor.AnnotatedLineEditor;
 import eu.etaxonomy.taxeditor.annotatedlineeditor.LineAnnotation;
 import eu.etaxonomy.taxeditor.annotatedlineeditor.LineAnnotationModel;
 import eu.etaxonomy.taxeditor.bulkeditor.input.AbstractBulkEditorInput;
+import eu.etaxonomy.taxeditor.bulkeditor.input.TaxonEditorInput;
 import eu.etaxonomy.taxeditor.model.IDerivedUnitFacadePart;
 import eu.etaxonomy.taxeditor.model.IDirtyMarkable;
 import eu.etaxonomy.taxeditor.model.IPartContentHasDetails;
@@ -309,4 +310,9 @@ public class BulkEditor extends AnnotatedLineEditor implements IPartContentHasDe
                menu.remove(ITextEditorActionConstants.SHIFT_LEFT);
                menu.remove(ITextEditorActionConstants.CONTEXT_PREFERENCES);
        }
+
+       @Override
+       public boolean canAttachMedia() {
+           return getEditorInput() instanceof TaxonEditorInput?true:false;
+       }
 }
index b9a3d50db54a0e6946d6ef4b413333c62c4b3d6a..4d30784b6a7bd14bceb845e1bae0dd287a3ad92a 100644 (file)
             </test>
          </with>
       </definition>
+      <definition
+            id="isSequence">
+         <with
+               variable="selection">
+            <test
+                  property="eu.etaxonomy.taxeditor.editor.handler.SpecimenPropertyTester.isSequence">
+            </test>
+         </with>
+      </definition>
+      <definition
+            id="isSingleRead">
+         <with
+               variable="selection">
+            <test
+                  property="eu.etaxonomy.taxeditor.editor.handler.SpecimenPropertyTester.isSingleRead">
+            </test>
+         </with>
+      </definition>
    </extension>
    <extension
          point="org.eclipse.core.expressions.propertyTesters">
             properties="isGroupEditor"
             type="eu.etaxonomy.taxeditor.bulkeditor.BulkEditor">
       </propertyTester>
+      <propertyTester
+            class="eu.etaxonomy.taxeditor.editor.handler.SpecimenPropertyTester"
+            id="eu.etaxonomy.taxeditor.editor.handler.SpecimenPropertyTester"
+            namespace="eu.etaxonomy.taxeditor.editor.handler.SpecimenPropertyTester"
+            properties="isSequence,isSingleRead"
+            type="org.eclipse.jface.viewers.IStructuredSelection">
+      </propertyTester>
    </extension>
    <extension
          point="org.eclipse.ui.bindings">   
index 94107c24aa62579a0771388f9ed03a5724d1d099..74e264dc5ec66cf1fb4a4b8ac7ed7e2c1dcb6cc8 100644 (file)
@@ -86,11 +86,6 @@ public class MultiPageTaxonEditor extends FormEditor implements
                super.dispose();
        }
 
-       /*
-        * (non-Javadoc)
-        *
-        * @see org.eclipse.ui.forms.editor.FormEditor#addPages()
-        */
        /** {@inheritDoc} */
        @Override
        protected void addPages() {
@@ -173,28 +168,11 @@ public class MultiPageTaxonEditor extends FormEditor implements
                firePropertyChange(PROP_DIRTY);
        }
 
-       /*
-        * (non-Javadoc)
-        *
-        * @see org.eclipse.ui.part.MultiPageEditorPart#isDirty()
-        */
-       /**
-        * <p>
-        * isDirty
-        * </p>
-        *
-        * @return a boolean.
-        */
        @Override
     public boolean isDirty() {
                return dirty;
        }
 
-       /*
-        * (non-Javadoc)
-        *
-        * @see org.eclipse.ui.forms.editor.FormEditor#editorDirtyStateChanged()
-        */
        /** {@inheritDoc} */
        @Override
        public void editorDirtyStateChanged() {
@@ -210,11 +188,6 @@ public class MultiPageTaxonEditor extends FormEditor implements
         * place before passing property change along to
         * <code>super.handlePropertyChange(int propertyId)</code>.
         */
-       /*
-        * (non-Javadoc)
-        *
-        * @see org.eclipse.ui.part.MultiPageEditorPart#handlePropertyChange(int)
-        */
        @Override
     protected void handlePropertyChange(int propertyId) {
                if (propertyId == PROP_DIRTY) {
@@ -312,9 +285,6 @@ public class MultiPageTaxonEditor extends FormEditor implements
         setPartName();
     }
 
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.model.IDirtyMarkableSelectionProvider#forceDirty()
-     */
     @Override
     public void forceDirty() {
         changed(null);
@@ -329,60 +299,19 @@ public class MultiPageTaxonEditor extends FormEditor implements
                return input.getTaxon();
        }
 
-       /*
-        * (non-Javadoc)
-        *
-        * @see
-        * eu.etaxonomy.cdm.api.conversation.IConversationEnabled#getConversationHolder
-        * ()
-        */
-       /**
-        * <p>
-        * getConversationHolder
-        * </p>
-        *
-        * @return a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder}
-        *         object.
-        */
        @Override
     public ConversationHolder getConversationHolder() {
                return conversation;
        }
 
-       /**
-        * <p>
-        * setConversationHolder
-        * </p>
-        *
-        * @param conversation
-        *            a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder}
-        *            object.
-        */
        public void setConversationHolder(ConversationHolder conversation) {
                this.conversation = conversation;
        }
 
-       /**
-        * <p>
-        * Getter for the field <code>undoContext</code>.
-        * </p>
-        *
-        * @return a {@link org.eclipse.core.commands.operations.IUndoContext}
-        *         object.
-        */
        public IUndoContext getUndoContext() {
                return undoContext;
        }
 
-       /**
-        * <p>
-        * Setter for the field <code>undoContext</code>.
-        * </p>
-        *
-        * @param undoContext
-        *            a {@link org.eclipse.core.commands.operations.IUndoContext}
-        *            object.
-        */
        public void setUndoContext(IUndoContext undoContext) {
                this.undoContext = undoContext;
        }
@@ -397,14 +326,7 @@ public class MultiPageTaxonEditor extends FormEditor implements
                getActiveEditor().setFocus();
        }
 
-    /*
-     * (non-Javadoc)
-     *
-     * @see
-     * eu.etaxonomy.cdm.persistence.hibernate.ICdmPostCrudObserver#update(eu
-     * .etaxonomy.cdm.persistence.hibernate.CdmCrudEvent)
-     */
-    /** {@inheritDoc} */
+       /** {@inheritDoc} */
     @Override
     public void update(CdmDataChangeMap events) {
         if (dataChangeBehavior == null) {
@@ -414,13 +336,6 @@ public class MultiPageTaxonEditor extends FormEditor implements
         DataChangeBridge.handleDataChange(events, dataChangeBehavior);
     }
 
-    /*
-     * (non-Javadoc)
-     *
-     * @see
-     * eu.etaxonomy.taxeditor.store.operations.IPostOperationEnabled#postOperation
-     * ()
-     */
     /** {@inheritDoc} */
     @Override
     public boolean postOperation(CdmBase objectAffectedByOperation) {
@@ -496,13 +411,6 @@ public class MultiPageTaxonEditor extends FormEditor implements
                return editorPage != null && editorPage.redraw(focus);
        }
 
-       /**
-        * <p>
-        * onComplete
-        * </p>
-        *
-        * @return a boolean.
-        */
        @Override
     public boolean onComplete() {
                return false;
@@ -549,4 +457,9 @@ public class MultiPageTaxonEditor extends FormEditor implements
                }
                return true;
        }
+
+       @Override
+       public boolean canAttachMedia() {
+           return true;
+       }
 }
@@ -1,4 +1,4 @@
-package eu.etaxonomy.taxeditor.molecular.handler;
+package eu.etaxonomy.taxeditor.editor.handler;
 
 
 import org.eclipse.core.expressions.PropertyTester;
@@ -24,10 +24,6 @@ public class SpecimenPropertyTester extends PropertyTester {
 
     public SpecimenPropertyTester() {}
 
-
-    /* (non-Javadoc)
-     * @see org.eclipse.core.expressions.IPropertyTester#test(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Object)
-     */
     /** {@inheritDoc} */
     @Override
     public boolean test(Object receiver, String property, Object[] args, Object expectedValue) {
@@ -46,12 +42,10 @@ public class SpecimenPropertyTester extends PropertyTester {
         return false;
     }
 
-
        private boolean isSequence(Object object) {
        return (object instanceof Sequence);
        }
 
-
        private boolean isSingleReadAlignment(Object object) {
        return (object instanceof SingleRead);
     }
index a7845395ed1b783ac5bb80dc3a0cf5d933986ed5..c805c6f165e7a4d70d2fd3c172b7b67a8a8e2606 100644 (file)
@@ -79,9 +79,6 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
     public DerivateView() {
     }
 
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.WorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
-     */
     @Override
     public void createPartControl(Composite parent) {
         viewer = new TreeViewer(new Tree(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION));
@@ -123,9 +120,6 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
         viewer.addDropSupport(dndOperations, transfers, new DerivateDropListener(this));
     }
 
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.EditorPart#doSave(org.eclipse.core.runtime.IProgressMonitor)
-     */
     @Override
     public void doSave(IProgressMonitor monitor) {
         String taskName = "Saving hierarchy";
@@ -150,16 +144,10 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
         refreshTree();
     }
 
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.EditorPart#doSaveAs()
-     */
     @Override
     public void doSaveAs() {
     }
 
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.EditorPart#getTitleToolTip()
-     */
     @Override
     public String getTitleToolTip() {
         if(getEditorInput() instanceof DerivateViewEditorInput){
@@ -169,9 +157,6 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
         return "Derivative Editor";
     }
 
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.EditorPart#init(org.eclipse.ui.IEditorSite, org.eclipse.ui.IEditorInput)
-     */
     @Override
     public void init(IEditorSite site, IEditorInput input) throws PartInitException {
         setSite(site);
@@ -183,9 +168,6 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
         }
     }
 
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.EditorPart#isDirty()
-     */
     @Override
     public boolean isDirty() {
         return isDirty;
@@ -198,18 +180,11 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
         this.isDirty = isDirty;
     }
 
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.EditorPart#isSaveAsAllowed()
-     */
     @Override
     public boolean isSaveAsAllowed() {
         return false;
     }
 
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.WorkbenchPart#setFocus()
-     */
     @Override
     public void setFocus() {
         viewer.getControl().setFocus();
@@ -219,16 +194,10 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
         }
     }
 
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.cdm.persistence.hibernate.ICdmPostDataChangeObserver#update(eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap)
-     */
     @Override
     public void update(CdmDataChangeMap changeEvents) {
     }
 
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.cdm.api.conversation.IConversationEnabled#getConversationHolder()
-     */
     @Override
     public ConversationHolder getConversationHolder() {
         return conversation;
@@ -241,9 +210,6 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
         return viewer;
     }
 
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.model.IDirtyMarkableSelectionProvider#changed(java.lang.Object)
-     */
     @Override
     public void changed(Object element) {
         setDirty(true);
@@ -251,9 +217,6 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
         viewer.refresh();
     }
 
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.model.IDirtyMarkableSelectionProvider#forceDirty()
-     */
     @Override
     public void forceDirty() {
         changed(null);
@@ -281,7 +244,6 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
         viewer.refresh();
     }
 
-
     private void generateMultiLinkSingleReads() {
         Set<SingleRead> multiLinkSingleReads = new HashSet<SingleRead>();
         for(Entry<SingleRead, Collection<Sequence>> entry:CdmStore.getService(ISequenceService.class).getSingleReadSequencesMap().entrySet()){
@@ -299,9 +261,6 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
         return this.multiLinkSingleReads;
     }
 
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)
-     */
     @Override
     public void selectionChanged(SelectionChangedEvent event) {
         this.selection  = event.getSelection();
@@ -315,9 +274,6 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
         return labelProvider;
     }
 
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.operation.IPostOperationEnabled#postOperation(eu.etaxonomy.cdm.model.common.CdmBase)
-     */
     @Override
     public boolean postOperation(CdmBase objectAffectedByOperation) {
         refreshTree();
@@ -327,12 +283,14 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
         return true;
     }
 
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.operation.IPostOperationEnabled#onComplete()
-     */
     @Override
     public boolean onComplete() {
         return true;
     }
 
+    @Override
+    public boolean canAttachMedia() {
+        return true;
+    }
+
 }
index 07cbd473dc5f8a3dd3f4f78d1e2b1bd17d2e64ce..f3c171437b0dbc43a0d7a84bba5871bb49badb24 100644 (file)
@@ -112,7 +112,7 @@ public class MediaViewPart extends AbstractCdmEditorViewPart implements IPartCon
             return;
         }
 
-               if(part instanceof IPartContentHasMedia){
+               if(part instanceof IPartContentHasMedia && ((IPartContentHasMedia) part).canAttachMedia()){
                    if(part instanceof MultiPageTaxonEditor){
                        IEditorInput input = ((IEditorPart) part).getEditorInput();
                        showViewer(part, new StructuredSelection(input));
index 20e8acae07575ffcc7db6bcccae830f87b360c9b..7b968c499f5d2c6dde1e7d9f8d58b811cd7fd4ea 100644 (file)
                commandId="eu.etaxonomy.taxeditor.molecular.pherogramComponent.changeQualityOutput">
          </handler>
       </extension>
-      <extension
-            point="org.eclipse.core.expressions.definitions">
-         <definition
-               id="isSequence">
-            <with
-                  variable="selection">
-               <test
-                     property="eu.etaxonomy.taxeditor.molecular.SpecimenPropertyTester.isSequence">
-               </test>
-            </with>
-         </definition>
-         <definition
-               id="isSingleRead">
-            <with
-                  variable="selection">
-               <test
-                     property="eu.etaxonomy.taxeditor.molecular.SpecimenPropertyTester.isSingleRead">
-               </test>
-            </with>
-         </definition>
-      </extension>
-      <extension
-            point="org.eclipse.core.expressions.propertyTesters">
-         <propertyTester
-               class="eu.etaxonomy.taxeditor.molecular.handler.SpecimenPropertyTester"
-               id="eu.etaxonomy.taxeditor.molecular.SpecimenPropertyTester"
-               namespace="eu.etaxonomy.taxeditor.molecular.SpecimenPropertyTester"
-               properties="isSequence,isSingleRead"
-               type="org.eclipse.jface.viewers.IStructuredSelection">
-         </propertyTester>
-      </extension>
       <extension
             point="org.eclipse.ui.bindings">
          <scheme
index 315e92df13ea087686dfca91587f3d7ef3030b69..35b0a2df6a3f18915452ea3dcd99c7995a5e3029 100644 (file)
@@ -52,6 +52,7 @@ import java.util.TreeMap;
 import org.biojava.bio.chromatogram.ChromatogramFactory;
 import org.biojava.bio.chromatogram.UnsupportedChromatogramFormatException;
 import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.jface.action.Action;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.ui.IActionBars;
@@ -60,6 +61,7 @@ import org.eclipse.ui.IEditorPart;
 import org.eclipse.ui.IEditorSite;
 import org.eclipse.ui.PartInitException;
 import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.actions.ActionFactory;
 import org.eclipse.ui.commands.ICommandService;
 import org.eclipse.ui.part.EditorPart;
 
@@ -103,7 +105,6 @@ public class AlignmentEditor extends EditorPart {
 
 
     private final ConversationHolder conversationHolder;
-
        private final AlignmentModelChangeListener DIRTY_LISTENER = new AlignmentModelChangeListener() {
                                @Override
                                public <T> void afterTokenChange(TokenChangeEvent<T> e) {
@@ -443,6 +444,20 @@ public class AlignmentEditor extends EditorPart {
     public void init(IEditorSite site, IEditorInput input) throws PartInitException {
         setSite(site);
         setInput(input);
+        System.out.println("AlignmentEditor.init(): " + ActionFactory.COPY.getId());
+        site.getActionBars().setGlobalActionHandler(ActionFactory.COPY.getId(), new Action(ActionFactory.COPY.getId()) {
+            @Override
+            public boolean isEnabled() {
+                System.out.println("isEnabled()");
+                return true;
+            }
+
+            @Override
+            public void run() {
+                System.out.println("run");
+                    super.run();
+                }
+            });
     }
 
 
@@ -692,30 +707,32 @@ public class AlignmentEditor extends EditorPart {
 
                if (tokens != null) {  // If either an edited sequence or a pherogram URI was provided.
                    provider.insertTokensAt(id, 0, tokens);
-               // Create pherogram area:
-               PherogramArea pherogramArea = new PherogramArea(getReadsArea().getContentArea(),
-                       new PherogramAreaModel(pherogramProvider));
-
-               // Set position properties and shifts:
-               PherogramAreaModel model = pherogramArea.getModel();
-               if ((firstSeqPos != null) && (leftCutPos != null)) {
-                   model.setFirstSeqLeftCutPos(firstSeqPos, leftCutPos);
-               }
-               if (rightCutPos != null) {
-                   model.setRightCutPosition(rightCutPos);
-               }
-               if ((shifts != null) && (shifts.length > 0)) {
-                   for (int i = 0; i < shifts.length; i++) {
-                       model.addShiftChange(shifts[i].position, shifts[i].shift);
-                   }
-                   setDirty();
-               }
-
-               // Add pherogram area to GUI:
-               pherogramArea.addMouseListener(new PherogramMouseListener(pherogramArea));
-               getReadsArea().getDataAreas().getSequenceAreas(id).add(pherogramArea);
-               }
 
+                   if (pherogramProvider != null) {
+                       // Create pherogram area:
+                       PherogramArea pherogramArea = new PherogramArea(getReadsArea().getContentArea(),
+                               new PherogramAreaModel(pherogramProvider));
+
+                       // Set position properties and shifts:
+                       PherogramAreaModel model = pherogramArea.getModel();
+                       if ((firstSeqPos != null) && (leftCutPos != null)) {
+                           model.setFirstSeqLeftCutPos(firstSeqPos, leftCutPos);
+                       }
+                       if (rightCutPos != null) {
+                           model.setRightCutPosition(rightCutPos);
+                       }
+                       if ((shifts != null) && (shifts.length > 0)) {
+                           for (int i = 0; i < shifts.length; i++) {
+                               model.addShiftChange(shifts[i].position, shifts[i].shift);
+                           }
+                           setDirty();
+                       }
+
+                       // Add pherogram area to GUI:
+                       pherogramArea.addMouseListener(new PherogramMouseListener(pherogramArea));
+                       getReadsArea().getDataAreas().getSequenceAreas(id).add(pherogramArea);
+                   }
+               }
                return id;
        }
 }
\ No newline at end of file
index 3b6997e0ae28ff2cf8ad487fe3c4816c733b05e3..42bd4714e1306cb938c6b5a9a0016b57ff21963f 100644 (file)
@@ -1,20 +1,20 @@
 // $Id$
 /**
-* Copyright (C) 2007 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.
-*/
+ * Copyright (C) 2007 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.model;
 
-
 /**
  *
- * Clients implementing this interface indicate, that the data they present is suitable for the media view
- * and that the media view should handle selection from the implementing part.
+ * Clients implementing this interface indicate, that the data they present is
+ * suitable for the media view and that the media view should handle selection
+ * from the implementing part.
  *
  * @author pplitzner
  * @date Sep 16, 2014
@@ -22,4 +22,12 @@ package eu.etaxonomy.taxeditor.model;
  */
 public interface IPartContentHasMedia {
 
+    /**
+     * Return <code>true</code> if media can be attached to the editor input and
+     * <code>false</code> otherwise
+     *
+     * @return true or false depending on the input of the implementing part
+     */
+    public boolean canAttachMedia();
+
 }
index b490669bde950bd45557e405db00ea62fba42d4a..2f148a8bc0285a41f1d0de2aab8b4dc75d8dcda7 100644 (file)
@@ -54,7 +54,7 @@ public class TaxonNodeDetailElement extends AbstractCdmDetailElement<ITaxonTreeN
        private EntitySelectionElement<Reference> selection_SecRef;
 
        private Taxon taxon;
-       
+
        private Reference secReference;
 
        private TextWithLabelElement textNewTaxonName;
@@ -166,8 +166,8 @@ public class TaxonNodeDetailElement extends AbstractCdmDetailElement<ITaxonTreeN
                                        setTaxon(selection_reuseExistingTaxon.getEntity());
                                }
                                complete = !textNewTaxonName.getText().isEmpty();
-                        
-                       
+
+
                } else if (eventSource == selection_reuseExistingName) {
                        boolean enabled = selection_reuseExistingName.getEntity() == null;
                        selection_reuseExistingTaxon.setEnabled(enabled);
@@ -175,7 +175,7 @@ public class TaxonNodeDetailElement extends AbstractCdmDetailElement<ITaxonTreeN
 
                        setTaxon(selection_reuseExistingName.getEntity());
                } else if (eventSource == textNewTaxonName) {
-                       boolean enabled = CdmUtils.isEmpty(textNewTaxonName.getText());
+                       boolean enabled = CdmUtils.isBlank(textNewTaxonName.getText());
                        selection_reuseExistingTaxon.setEnabled(enabled);
                        selection_reuseExistingName.setEnabled(enabled);
 
@@ -246,7 +246,7 @@ public class TaxonNodeDetailElement extends AbstractCdmDetailElement<ITaxonTreeN
                        this.parentTreeNode = selection_classification.getEntity();
                }
        }
-       
+
        private void setSecReference(Reference secRef){
                this.secReference = secRef;
                setTaxon(textNewTaxonName.getText());
@@ -255,7 +255,7 @@ public class TaxonNodeDetailElement extends AbstractCdmDetailElement<ITaxonTreeN
        private void setTaxon(Taxon taxon) {
                this.taxon = taxon;
                textNewTaxonName.setText(taxon.getName().getTitleCache());
-               
+
        }
 
        private void setTaxon(String taxonNameString) {
diff --git a/pom.xml b/pom.xml
index 6685cc15f6abede988b8697775ac157d6a7c4e7d..44ff82a0435db2349a683eb4e550959c0dfce9c0 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <prerequisites>
     <maven>3.0</maven>